diff --git a/docs/CaptureApi.md b/docs/CaptureApi.md index 2def5f7e..7d3c16f1 100644 --- a/docs/CaptureApi.md +++ b/docs/CaptureApi.md @@ -54,5 +54,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 diff --git a/docs/RequestBody.md b/docs/CreateAdhocReportRequest.md similarity index 96% rename from docs/RequestBody.md rename to docs/CreateAdhocReportRequest.md index 23b73392..ffda30e7 100644 --- a/docs/RequestBody.md +++ b/docs/CreateAdhocReportRequest.md @@ -1,4 +1,4 @@ -# CyberSource.RequestBody +# CyberSource.CreateAdhocReportRequest ## Properties Name | Type | Description | Notes diff --git a/docs/RequestBody1.md b/docs/CreateReportSubscriptionRequest.md similarity index 96% rename from docs/RequestBody1.md rename to docs/CreateReportSubscriptionRequest.md index af25409a..15d5acd8 100644 --- a/docs/RequestBody1.md +++ b/docs/CreateReportSubscriptionRequest.md @@ -1,4 +1,4 @@ -# CyberSource.RequestBody1 +# CyberSource.CreateReportSubscriptionRequest ## Properties Name | Type | Description | Notes diff --git a/docs/CreditApi.md b/docs/CreditApi.md index b94d83be..2cf7084f 100644 --- a/docs/CreditApi.md +++ b/docs/CreditApi.md @@ -4,7 +4,7 @@ All URIs are relative to *https://apitest.cybersource.com* Method | HTTP request | Description ------------- | ------------- | ------------- -[**createCredit**](CreditApi.md#createCredit) | **POST** /pts/v2/credits/ | Process a Credit +[**createCredit**](CreditApi.md#createCredit) | **POST** /pts/v2/credits | Process a Credit @@ -51,5 +51,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 diff --git a/docs/DownloadDTDApi.md b/docs/DownloadDTDApi.md index 830b94c3..cf0b7db5 100644 --- a/docs/DownloadDTDApi.md +++ b/docs/DownloadDTDApi.md @@ -4,16 +4,16 @@ All URIs are relative to *https://apitest.cybersource.com* Method | HTTP request | Description ------------- | ------------- | ------------- -[**getDTDV2**](DownloadDTDApi.md#getDTDV2) | **GET** /dtds/{reportDefinitionNameVersion} | Used to download DTDs for reports +[**getDTDV2**](DownloadDTDApi.md#getDTDV2) | **GET** /dtds/{reportDefinitionNameVersion} | Download DTD for report # **getDTDV2** > getDTDV2(reportDefinitionNameVersion) -Used to download DTDs for reports +Download DTD for report -Downloads DTDs for reports on no-auth. +Used to download DTDs for reports on no-auth. ### Example ```javascript diff --git a/docs/DownloadXSDApi.md b/docs/DownloadXSDApi.md index fe9f7b14..565873cb 100644 --- a/docs/DownloadXSDApi.md +++ b/docs/DownloadXSDApi.md @@ -4,16 +4,16 @@ All URIs are relative to *https://apitest.cybersource.com* Method | HTTP request | Description ------------- | ------------- | ------------- -[**getXSDV2**](DownloadXSDApi.md#getXSDV2) | **GET** /xsds/{reportDefinitionNameVersion} | Used to download XSDs for reports +[**getXSDV2**](DownloadXSDApi.md#getXSDV2) | **GET** /xsds/{reportDefinitionNameVersion} | Download XSD for report # **getXSDV2** > getXSDV2(reportDefinitionNameVersion) -Used to download XSDs for reports +Download XSD for report -Downloads XSDs for reports on no-auth. +Used to download XSDs for reports on no-auth. ### Example ```javascript diff --git a/docs/Error.md b/docs/Error.md index d96dbc0e..54cadc40 100644 --- a/docs/Error.md +++ b/docs/Error.md @@ -3,7 +3,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**responseStatus** | [**InlineResponseDefaultResponseStatus**](InlineResponseDefaultResponseStatus.md) | | [optional] -**links** | [**ErrorLinks**](ErrorLinks.md) | | [optional] +**type** | **String** | | [optional] +**message** | **String** | The detailed message related to the type stated above. | [optional] +**details** | [**Tmsv1instrumentidentifiersDetails**](Tmsv1instrumentidentifiersDetails.md) | | [optional] diff --git a/docs/ErrorBean.md b/docs/ErrorBean.md index ff195348..f56a7663 100644 --- a/docs/ErrorBean.md +++ b/docs/ErrorBean.md @@ -8,6 +8,6 @@ Name | Type | Description | Notes **localizationKey** | **String** | Localization Key Name | [optional] **correlationId** | **String** | Correlation Id | [optional] **detail** | **String** | Error Detail | [optional] -**fields** | [**[InlineResponse4001Fields]**](InlineResponse4001Fields.md) | Error fields List | [optional] +**fields** | [**[InlineResponse400Fields]**](InlineResponse400Fields.md) | Error fields List | [optional] diff --git a/docs/ErrorLinks.md b/docs/ErrorLinks.md index 2e27fa45..70440ece 100644 --- a/docs/ErrorLinks.md +++ b/docs/ErrorLinks.md @@ -3,8 +3,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**self** | [**InlineResponseDefaultLinksNext**](InlineResponseDefaultLinksNext.md) | | [optional] -**documentation** | [**[InlineResponseDefaultLinksNext]**](InlineResponseDefaultLinksNext.md) | | [optional] **next** | [**[InlineResponseDefaultLinksNext]**](InlineResponseDefaultLinksNext.md) | | [optional] +**documentation** | [**[InlineResponseDefaultLinksNext]**](InlineResponseDefaultLinksNext.md) | | [optional] +**self** | [**InlineResponseDefaultLinksNext**](InlineResponseDefaultLinksNext.md) | | [optional] diff --git a/docs/ErrorResponse.md b/docs/ErrorResponse.md index 33816ca2..6abc397a 100644 --- a/docs/ErrorResponse.md +++ b/docs/ErrorResponse.md @@ -3,7 +3,5 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**responseStatus** | [**InlineResponseDefaultResponseStatus**](InlineResponseDefaultResponseStatus.md) | | [optional] -**links** | [**InlineResponseDefaultLinks**](InlineResponseDefaultLinks.md) | | [optional] diff --git a/docs/InlineResponse400.md b/docs/InlineResponse400.md index 4aed45cb..f671232f 100644 --- a/docs/InlineResponse400.md +++ b/docs/InlineResponse400.md @@ -3,8 +3,11 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**type** | **String** | | [optional] -**message** | **String** | The detailed message related to the type stated above. | [optional] -**details** | [**Tmsv1instrumentidentifiersDetails**](Tmsv1instrumentidentifiersDetails.md) | | [optional] +**code** | **String** | Error code | +**message** | **String** | Error message | +**localizationKey** | **String** | Localization Key Name | [optional] +**correlationId** | **String** | Correlation Id | [optional] +**detail** | **String** | Error Detail | [optional] +**fields** | [**[InlineResponse400Fields]**](InlineResponse400Fields.md) | Error fields List | [optional] diff --git a/docs/InlineResponse4001.md b/docs/InlineResponse4001.md index 63e0aa0e..e3a43183 100644 --- a/docs/InlineResponse4001.md +++ b/docs/InlineResponse4001.md @@ -3,11 +3,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**code** | **String** | Error code | -**message** | **String** | Error message | -**localizationKey** | **String** | Localization Key Name | [optional] -**correlationId** | **String** | Correlation Id | [optional] -**detail** | **String** | Error Detail | [optional] -**fields** | [**[InlineResponse4001Fields]**](InlineResponse4001Fields.md) | Error fields List | [optional] +**type** | **String** | | [optional] +**message** | **String** | The detailed message related to the type stated above. | [optional] +**details** | [**Tmsv1instrumentidentifiersDetails**](Tmsv1instrumentidentifiersDetails.md) | | [optional] diff --git a/docs/InlineResponse4001Fields.md b/docs/InlineResponse400Fields.md similarity index 89% rename from docs/InlineResponse4001Fields.md rename to docs/InlineResponse400Fields.md index 0f141097..6505126b 100644 --- a/docs/InlineResponse4001Fields.md +++ b/docs/InlineResponse400Fields.md @@ -1,4 +1,4 @@ -# CyberSource.InlineResponse4001Fields +# CyberSource.InlineResponse400Fields ## Properties Name | Type | Description | Notes diff --git a/docs/Link.md b/docs/Link.md index d03d462e..55e66477 100644 --- a/docs/Link.md +++ b/docs/Link.md @@ -3,8 +3,6 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**href** | **String** | URI of the linked resource. | [optional] -**title** | **String** | Label of the linked resource. | [optional] -**method** | **String** | HTTP method of the linked resource. | [optional] +**href** | **String** | | [optional] diff --git a/docs/Links.md b/docs/Links.md index 708fe35b..f8a9f272 100644 --- a/docs/Links.md +++ b/docs/Links.md @@ -3,8 +3,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**self** | [**InlineResponseDefaultLinksNext**](InlineResponseDefaultLinksNext.md) | | [optional] -**documentation** | [**[InlineResponseDefaultLinksNext]**](InlineResponseDefaultLinksNext.md) | | [optional] -**next** | [**[InlineResponseDefaultLinksNext]**](InlineResponseDefaultLinksNext.md) | | [optional] +**self** | [**TmsV1InstrumentIdentifiersPost200ResponseLinksSelf**](TmsV1InstrumentIdentifiersPost200ResponseLinksSelf.md) | | [optional] +**ancestor** | [**TmsV1InstrumentIdentifiersPost200ResponseLinksSelf**](TmsV1InstrumentIdentifiersPost200ResponseLinksSelf.md) | | [optional] +**successor** | [**TmsV1InstrumentIdentifiersPost200ResponseLinksSelf**](TmsV1InstrumentIdentifiersPost200ResponseLinksSelf.md) | | [optional] diff --git a/docs/PaymentsApi.md b/docs/PaymentsApi.md index cc157cfd..4d1caafd 100644 --- a/docs/PaymentsApi.md +++ b/docs/PaymentsApi.md @@ -4,7 +4,7 @@ All URIs are relative to *https://apitest.cybersource.com* Method | HTTP request | Description ------------- | ------------- | ------------- -[**createPayment**](PaymentsApi.md#createPayment) | **POST** /pts/v2/payments/ | Process a Payment +[**createPayment**](PaymentsApi.md#createPayment) | **POST** /pts/v2/payments | Process a Payment @@ -51,5 +51,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 diff --git a/docs/PayoutsApi.md b/docs/PayoutsApi.md index ee98caa2..53b7641e 100644 --- a/docs/PayoutsApi.md +++ b/docs/PayoutsApi.md @@ -51,5 +51,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 diff --git a/docs/Ptsv2creditsProcessingInformation.md b/docs/Ptsv2creditsProcessingInformation.md index b22401c2..b72bf276 100644 --- a/docs/Ptsv2creditsProcessingInformation.md +++ b/docs/Ptsv2creditsProcessingInformation.md @@ -14,5 +14,7 @@ Name | Type | Description | Notes **industryDataType** | **String** | Flag that indicates that the transaction includes airline data or restaurant data. This field must be set 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, CyberSource does not send airline data 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, CyberSource does not send restaurant data to the processor. Possible Values: - **airline** - **restaurant** | [optional] **recurringOptions** | [**Ptsv2paymentsidrefundsProcessingInformationRecurringOptions**](Ptsv2paymentsidrefundsProcessingInformationRecurringOptions.md) | | [optional] **bankTransferOptions** | [**Ptsv2creditsProcessingInformationBankTransferOptions**](Ptsv2creditsProcessingInformationBankTransferOptions.md) | | [optional] +**purchaseOptions** | [**Ptsv2creditsProcessingInformationPurchaseOptions**](Ptsv2creditsProcessingInformationPurchaseOptions.md) | | [optional] +**electronicBenefitsTransfer** | [**Ptsv2creditsProcessingInformationElectronicBenefitsTransfer**](Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.md) | | [optional] diff --git a/docs/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.md b/docs/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.md new file mode 100644 index 00000000..88a65b46 --- /dev/null +++ b/docs/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.md @@ -0,0 +1,8 @@ +# CyberSource.Ptsv2creditsProcessingInformationElectronicBenefitsTransfer + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**category** | **String** | Flag that specifies the category for the EBT transaction. Possible values: - `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. - `FOOD`: Food stamp benefits, which can be used only to purchase food items authorized by the USDA SNAP program. | [optional] + + diff --git a/docs/Ptsv2creditsProcessingInformationPurchaseOptions.md b/docs/Ptsv2creditsProcessingInformationPurchaseOptions.md new file mode 100644 index 00000000..36e8f8eb --- /dev/null +++ b/docs/Ptsv2creditsProcessingInformationPurchaseOptions.md @@ -0,0 +1,8 @@ +# CyberSource.Ptsv2creditsProcessingInformationPurchaseOptions + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**isElectronicBenefitsTransfer** | **Boolean** | Flag that indicates that this transaction is an EBT transaction.Possible values: - **true** - **false** | [optional] + + diff --git a/docs/Ptsv2paymentsOrderInformationAmountDetails.md b/docs/Ptsv2paymentsOrderInformationAmountDetails.md index 9797e80c..93eed450 100644 --- a/docs/Ptsv2paymentsOrderInformationAmountDetails.md +++ b/docs/Ptsv2paymentsOrderInformationAmountDetails.md @@ -26,5 +26,6 @@ Name | Type | Description | Notes **serviceFeeAmount** | **String** | Service fee. Required for service fee transactions. | [optional] **originalAmount** | **String** | Amount in your original local pricing currency. This value cannot be negative. You can include a decimal point (.) in this field to denote the currency exponent, but you cannot include any other special characters. If needed, CyberSource truncates the amount to the correct number of decimal places. For details, see the `original_amount` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) | [optional] **originalCurrency** | **String** | Your local pricing currency code. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) For details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) For details about converting a foreign cardholder’s purchase from your local pricing currency to the cardholder’s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm). | [optional] +**cashbackAmount** | **String** | Cashback amount requested by the customer. If a cashback amount is included in the request, it must be included in the orderInformation.amountDetails.totalAmount value. | [optional] diff --git a/docs/Ptsv2paymentsPaymentInformation.md b/docs/Ptsv2paymentsPaymentInformation.md index b018bb5f..ae864cd5 100644 --- a/docs/Ptsv2paymentsPaymentInformation.md +++ b/docs/Ptsv2paymentsPaymentInformation.md @@ -8,5 +8,6 @@ Name | Type | Description | Notes **fluidData** | [**Ptsv2paymentsPaymentInformationFluidData**](Ptsv2paymentsPaymentInformationFluidData.md) | | [optional] **customer** | [**Ptsv2paymentsPaymentInformationCustomer**](Ptsv2paymentsPaymentInformationCustomer.md) | | [optional] **bank** | [**Ptsv2paymentsPaymentInformationBank**](Ptsv2paymentsPaymentInformationBank.md) | | [optional] +**paymentType** | [**Ptsv2paymentsPaymentInformationPaymentType**](Ptsv2paymentsPaymentInformationPaymentType.md) | | [optional] diff --git a/docs/Ptsv2paymentsPaymentInformationPaymentType.md b/docs/Ptsv2paymentsPaymentInformationPaymentType.md new file mode 100644 index 00000000..796cb944 --- /dev/null +++ b/docs/Ptsv2paymentsPaymentInformationPaymentType.md @@ -0,0 +1,10 @@ +# CyberSource.Ptsv2paymentsPaymentInformationPaymentType + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit. Possible values: - `CARD` (use this for a PIN debit transaction) | [optional] +**subTypeName** | **String** | SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers. - `DEBIT` (use this for a PIN debit transaction) | [optional] +**method** | [**Ptsv2paymentsPaymentInformationPaymentTypeMethod**](Ptsv2paymentsPaymentInformationPaymentTypeMethod.md) | | [optional] + + diff --git a/docs/Ptsv2paymentsPaymentInformationPaymentTypeMethod.md b/docs/Ptsv2paymentsPaymentInformationPaymentTypeMethod.md new file mode 100644 index 00000000..27a349d4 --- /dev/null +++ b/docs/Ptsv2paymentsPaymentInformationPaymentTypeMethod.md @@ -0,0 +1,8 @@ +# CyberSource.Ptsv2paymentsPaymentInformationPaymentTypeMethod + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal | [optional] + + diff --git a/docs/Ptsv2paymentsProcessingInformation.md b/docs/Ptsv2paymentsProcessingInformation.md index 6a9c7aeb..968f6981 100644 --- a/docs/Ptsv2paymentsProcessingInformation.md +++ b/docs/Ptsv2paymentsProcessingInformation.md @@ -18,5 +18,7 @@ Name | Type | Description | Notes **captureOptions** | [**Ptsv2paymentsProcessingInformationCaptureOptions**](Ptsv2paymentsProcessingInformationCaptureOptions.md) | | [optional] **recurringOptions** | [**Ptsv2paymentsProcessingInformationRecurringOptions**](Ptsv2paymentsProcessingInformationRecurringOptions.md) | | [optional] **bankTransferOptions** | [**Ptsv2paymentsProcessingInformationBankTransferOptions**](Ptsv2paymentsProcessingInformationBankTransferOptions.md) | | [optional] +**purchaseOptions** | [**Ptsv2paymentsProcessingInformationPurchaseOptions**](Ptsv2paymentsProcessingInformationPurchaseOptions.md) | | [optional] +**electronicBenefitsTransfer** | [**Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer**](Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.md) | | [optional] diff --git a/docs/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.md b/docs/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.md new file mode 100644 index 00000000..fc47ddc5 --- /dev/null +++ b/docs/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.md @@ -0,0 +1,9 @@ +# CyberSource.Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**category** | **String** | Flag that specifies the category for the EBT transaction. Possible values: - `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. - `FOOD`: Food stamp benefits, which can be used only to purchase food items authorized by the USDA SNAP program. | [optional] +**voucherSerialNumber** | **String** | The serial number printed on the EBT voucher. | [optional] + + diff --git a/docs/Ptsv2paymentsProcessingInformationPurchaseOptions.md b/docs/Ptsv2paymentsProcessingInformationPurchaseOptions.md new file mode 100644 index 00000000..ecda72fc --- /dev/null +++ b/docs/Ptsv2paymentsProcessingInformationPurchaseOptions.md @@ -0,0 +1,9 @@ +# CyberSource.Ptsv2paymentsProcessingInformationPurchaseOptions + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**isElectronicBenefitsTransfer** | **Boolean** | Flag that indicates that this transaction is an EBT transaction.Possible values: - **true** - **false** | [optional] +**type** | **String** | This field is used in PIN Debit EBT transaction as a flag to identify EBT vouchers.Possible values: - `EBT_VOUCHER`: Indicates EBT voucher | [optional] + + diff --git a/docs/Ptsv2paymentsidcapturesOrderInformationAmountDetails.md b/docs/Ptsv2paymentsidcapturesOrderInformationAmountDetails.md index 35240eb4..a7c7797e 100644 --- a/docs/Ptsv2paymentsidcapturesOrderInformationAmountDetails.md +++ b/docs/Ptsv2paymentsidcapturesOrderInformationAmountDetails.md @@ -22,5 +22,6 @@ Name | Type | Description | Notes **taxDetails** | [**[Ptsv2paymentsOrderInformationAmountDetailsTaxDetails]**](Ptsv2paymentsOrderInformationAmountDetailsTaxDetails.md) | | [optional] **serviceFeeAmount** | **String** | Service fee. Required for service fee transactions. | [optional] **originalCurrency** | **String** | Your local pricing currency code. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) For details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm) For details about converting a foreign cardholder’s purchase from your local pricing currency to the cardholder’s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm). | [optional] +**cashbackAmount** | **String** | Cashback amount requested by the customer. If a cashback amount is included in the request, it must be included in the orderInformation.amountDetails.totalAmount value. | [optional] diff --git a/docs/Ptsv2paymentsidrefundsPaymentInformation.md b/docs/Ptsv2paymentsidrefundsPaymentInformation.md index e36a5256..4a7fee6c 100644 --- a/docs/Ptsv2paymentsidrefundsPaymentInformation.md +++ b/docs/Ptsv2paymentsidrefundsPaymentInformation.md @@ -6,5 +6,6 @@ Name | Type | Description | Notes **card** | [**Ptsv2paymentsidrefundsPaymentInformationCard**](Ptsv2paymentsidrefundsPaymentInformationCard.md) | | [optional] **bank** | [**Ptsv2paymentsPaymentInformationBank**](Ptsv2paymentsPaymentInformationBank.md) | | [optional] **customer** | [**Ptsv2paymentsPaymentInformationCustomer**](Ptsv2paymentsPaymentInformationCustomer.md) | | [optional] +**paymentType** | [**Ptsv2paymentsPaymentInformationPaymentType**](Ptsv2paymentsPaymentInformationPaymentType.md) | | [optional] diff --git a/docs/Ptsv2paymentsidvoidsPaymentInformation.md b/docs/Ptsv2paymentsidvoidsPaymentInformation.md new file mode 100644 index 00000000..9c738460 --- /dev/null +++ b/docs/Ptsv2paymentsidvoidsPaymentInformation.md @@ -0,0 +1,8 @@ +# CyberSource.Ptsv2paymentsidvoidsPaymentInformation + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**paymentType** | [**Ptsv2paymentsPaymentInformationPaymentType**](Ptsv2paymentsPaymentInformationPaymentType.md) | | [optional] + + diff --git a/docs/RefundApi.md b/docs/RefundApi.md index 724c6c87..2f18d8e6 100644 --- a/docs/RefundApi.md +++ b/docs/RefundApi.md @@ -55,7 +55,7 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 # **refundPayment** @@ -104,5 +104,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 diff --git a/docs/ReportSubscriptionsApi.md b/docs/ReportSubscriptionsApi.md index 4da0c765..4cc3ee98 100644 --- a/docs/ReportSubscriptionsApi.md +++ b/docs/ReportSubscriptionsApi.md @@ -12,7 +12,7 @@ Method | HTTP request | Description # **createSubscription** -> createSubscription(requestBody, opts) +> createSubscription(createReportSubscriptionRequest, opts) Create Report Subscription for a report name by organization @@ -24,7 +24,7 @@ var CyberSource = require('CyberSource'); var apiInstance = new CyberSource.ReportSubscriptionsApi(); -var requestBody = new CyberSource.RequestBody1(); // RequestBody1 | Report subscription request payload +var createReportSubscriptionRequest = new CyberSource.CreateReportSubscriptionRequest(); // CreateReportSubscriptionRequest | Report subscription request payload var opts = { 'organizationId': "organizationId_example" // String | Valid Cybersource Organization Id @@ -37,14 +37,14 @@ var callback = function(error, data, response) { console.log('API called successfully.'); } }; -apiInstance.createSubscription(requestBody, opts, callback); +apiInstance.createSubscription(createReportSubscriptionRequest, opts, callback); ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **requestBody** | [**RequestBody1**](RequestBody1.md)| Report subscription request payload | + **createReportSubscriptionRequest** | [**CreateReportSubscriptionRequest**](CreateReportSubscriptionRequest.md)| Report subscription request payload | **organizationId** | **String**| Valid Cybersource Organization Id | [optional] ### Return type diff --git a/docs/ReportsApi.md b/docs/ReportsApi.md index 39715f8d..f6527e65 100644 --- a/docs/ReportsApi.md +++ b/docs/ReportsApi.md @@ -11,7 +11,7 @@ Method | HTTP request | Description # **createReport** -> createReport(requestBody, opts) +> createReport(createAdhocReportRequest, opts) Create Adhoc Report @@ -23,7 +23,7 @@ var CyberSource = require('CyberSource'); var apiInstance = new CyberSource.ReportsApi(); -var requestBody = new CyberSource.RequestBody(); // RequestBody | Report subscription request payload +var createAdhocReportRequest = new CyberSource.CreateAdhocReportRequest(); // CreateAdhocReportRequest | Report subscription request payload var opts = { 'organizationId': "organizationId_example" // String | Valid Cybersource Organization Id @@ -36,14 +36,14 @@ var callback = function(error, data, response) { console.log('API called successfully.'); } }; -apiInstance.createReport(requestBody, opts, callback); +apiInstance.createReport(createAdhocReportRequest, opts, callback); ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **requestBody** | [**RequestBody**](RequestBody.md)| Report subscription request payload | + **createAdhocReportRequest** | [**CreateAdhocReportRequest**](CreateAdhocReportRequest.md)| Report subscription request payload | **organizationId** | **String**| Valid Cybersource Organization Id | [optional] ### Return type diff --git a/docs/ReversalApi.md b/docs/ReversalApi.md index e1662e59..30b13be3 100644 --- a/docs/ReversalApi.md +++ b/docs/ReversalApi.md @@ -54,5 +54,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 diff --git a/docs/SearchTransactionsApi.md b/docs/SearchTransactionsApi.md index 1f4ebc29..c7e9b121 100644 --- a/docs/SearchTransactionsApi.md +++ b/docs/SearchTransactionsApi.md @@ -98,5 +98,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: */* diff --git a/docs/TransactionBatchesApi.md b/docs/TransactionBatchesApi.md index 5bb8149f..e878a560 100644 --- a/docs/TransactionBatchesApi.md +++ b/docs/TransactionBatchesApi.md @@ -4,16 +4,16 @@ All URIs are relative to *https://apitest.cybersource.com* Method | HTTP request | Description ------------- | ------------- | ------------- -[**getTransactionBatchDetails**](TransactionBatchesApi.md#getTransactionBatchDetails) | **GET** /pts/v1/transaction-batch-details/{id} | Get transaction details for a given batch id +[**getTransactionBatchDetails**](TransactionBatchesApi.md#getTransactionBatchDetails) | **GET** /pts/v1/transaction-batch-details/{id} | Get transaction details for a given batch id [**getTransactionBatchId**](TransactionBatchesApi.md#getTransactionBatchId) | **GET** /pts/v1/transaction-batches/{id} | Get individual batch file [**getTransactionBatches**](TransactionBatchesApi.md#getTransactionBatches) | **GET** /pts/v1/transaction-batches | Get a list of batch files # **getTransactionBatchDetails** -> getTransactionBatchDetails(id, opts) +> getTransactionBatchDetails(id) -Get transaction details for a given batch id +Get transaction details for a given batch id 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. @@ -25,10 +25,6 @@ var apiInstance = new CyberSource.TransactionBatchesApi(); var id = "id_example"; // String | The batch id assigned for the template. -var opts = { - 'uploadDate': new Date("2013-10-20"), // Date | Date in which the original batch file was uploaded. Date must be in ISO-8601 format. Please 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) **Example date format:** - yyyy-MM-dd - 'status': "status_example" // String | Allows you to filter by rejected response. Valid values: - Rejected -}; var callback = function(error, data, response) { if (error) { @@ -37,7 +33,7 @@ var callback = function(error, data, response) { console.log('API called successfully.'); } }; -apiInstance.getTransactionBatchDetails(id, opts, callback); +apiInstance.getTransactionBatchDetails(id, callback); ``` ### Parameters @@ -45,8 +41,6 @@ apiInstance.getTransactionBatchDetails(id, opts, callback); Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **id** | **String**| The batch id assigned for the template. | - **uploadDate** | **Date**| Date in which the original batch file was uploaded. Date must be in ISO-8601 format. Please 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) **Example date format:** - yyyy-MM-dd | [optional] - **status** | **String**| Allows you to filter by rejected response. Valid values: - Rejected | [optional] ### Return type diff --git a/docs/TransactionDetailsApi.md b/docs/TransactionDetailsApi.md index 8a10edf5..896aea70 100644 --- a/docs/TransactionDetailsApi.md +++ b/docs/TransactionDetailsApi.md @@ -51,5 +51,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 diff --git a/docs/TssV2TransactionsGet200ResponsePaymentInformationPaymentType.md b/docs/TssV2TransactionsGet200ResponsePaymentInformationPaymentType.md index 0411ac86..095dd429 100644 --- a/docs/TssV2TransactionsGet200ResponsePaymentInformationPaymentType.md +++ b/docs/TssV2TransactionsGet200ResponsePaymentInformationPaymentType.md @@ -3,8 +3,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**name** | **String** | 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. | [optional] -**subTypeName** | **String** | SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers. | [optional] +**name** | **String** | A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit. Possible values: - `CARD` (use this for a PIN debit transaction) | [optional] +**subTypeName** | **String** | SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers. - `DEBIT` (use this for a PIN debit transaction) | [optional] **fundingSource** | [**TssV2TransactionsGet200ResponsePaymentInformationPaymentTypeFundingSource**](TssV2TransactionsGet200ResponsePaymentInformationPaymentTypeFundingSource.md) | | [optional] **method** | **String** | A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal | [optional] **authenticationMethod** | **String** | A Payment Type Authentication Method is the means used to verify that the presenter of the Payment Type credential is an authorized user of the Payment Instrument. Examples: 3DSecure – Verified by Visa, 3DSecure – MasteCard Secure Code | [optional] diff --git a/docs/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType.md b/docs/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType.md index 47b65285..8a08d084 100644 --- a/docs/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType.md +++ b/docs/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType.md @@ -3,7 +3,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**name** | **String** | 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. | [optional] +**name** | **String** | A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit. Possible values: - `CARD` (use this for a PIN debit transaction) | [optional] **method** | **String** | A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal | [optional] diff --git a/docs/UserManagementApi.md b/docs/UserManagementApi.md index fd28c9b5..66e1eb42 100644 --- a/docs/UserManagementApi.md +++ b/docs/UserManagementApi.md @@ -58,5 +58,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 diff --git a/docs/VoidApi.md b/docs/VoidApi.md index 19471a56..87b132bb 100644 --- a/docs/VoidApi.md +++ b/docs/VoidApi.md @@ -57,7 +57,7 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 # **voidCredit** @@ -106,7 +106,7 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 # **voidPayment** @@ -155,7 +155,7 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 # **voidRefund** @@ -204,5 +204,5 @@ No authorization required ### HTTP request headers - **Content-Type**: application/json;charset=utf-8 - - **Accept**: application/json;charset=utf-8 + - **Accept**: application/hal+json;charset=utf-8 diff --git a/docs/VoidCaptureRequest.md b/docs/VoidCaptureRequest.md index 9d90ec5e..04e5f869 100644 --- a/docs/VoidCaptureRequest.md +++ b/docs/VoidCaptureRequest.md @@ -4,5 +4,6 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **clientReferenceInformation** | [**Ptsv2paymentsidreversalsClientReferenceInformation**](Ptsv2paymentsidreversalsClientReferenceInformation.md) | | [optional] +**paymentInformation** | [**Ptsv2paymentsidvoidsPaymentInformation**](Ptsv2paymentsidvoidsPaymentInformation.md) | | [optional] diff --git a/docs/VoidCreditRequest.md b/docs/VoidCreditRequest.md index 222a13c1..de33661f 100644 --- a/docs/VoidCreditRequest.md +++ b/docs/VoidCreditRequest.md @@ -4,5 +4,6 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **clientReferenceInformation** | [**Ptsv2paymentsidreversalsClientReferenceInformation**](Ptsv2paymentsidreversalsClientReferenceInformation.md) | | [optional] +**paymentInformation** | [**Ptsv2paymentsidvoidsPaymentInformation**](Ptsv2paymentsidvoidsPaymentInformation.md) | | [optional] diff --git a/docs/VoidPaymentRequest.md b/docs/VoidPaymentRequest.md index 3375ddd8..8f7e28b8 100644 --- a/docs/VoidPaymentRequest.md +++ b/docs/VoidPaymentRequest.md @@ -4,5 +4,6 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **clientReferenceInformation** | [**Ptsv2paymentsidreversalsClientReferenceInformation**](Ptsv2paymentsidreversalsClientReferenceInformation.md) | | [optional] +**paymentInformation** | [**Ptsv2paymentsidvoidsPaymentInformation**](Ptsv2paymentsidvoidsPaymentInformation.md) | | [optional] diff --git a/docs/VoidRefundRequest.md b/docs/VoidRefundRequest.md index 532a7274..6d54722d 100644 --- a/docs/VoidRefundRequest.md +++ b/docs/VoidRefundRequest.md @@ -4,5 +4,6 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **clientReferenceInformation** | [**Ptsv2paymentsidreversalsClientReferenceInformation**](Ptsv2paymentsidreversalsClientReferenceInformation.md) | | [optional] +**paymentInformation** | [**Ptsv2paymentsidvoidsPaymentInformation**](Ptsv2paymentsidvoidsPaymentInformation.md) | | [optional] diff --git a/generator/cybersource-javascript-template/ApiClient.mustache b/generator/cybersource-javascript-template/ApiClient.mustache index f80364c2..8d57d6ae 100644 --- a/generator/cybersource-javascript-template/ApiClient.mustache +++ b/generator/cybersource-javascript-template/ApiClient.mustache @@ -507,7 +507,12 @@ if (accept) { request.accept(accept); /* Code for downloading file from stream */ - if (accept === 'application/xml') { + if (accept === 'application/xml' || accept === 'text/csv') { + if (accept === 'application/xml') { + this.downloadFilePath = this.downloadFilePath + '.xml'; + } else { + this.downloadFilePath = this.downloadFilePath + '.csv'; + } var fs = require('fs'); var stream = fs.createWriteStream(this.downloadFilePath); request.send().pipe(stream); diff --git a/generator/cybersource-rest-spec.json b/generator/cybersource-rest-spec.json index 0d9ccdf1..6f4b820d 100644 --- a/generator/cybersource-rest-spec.json +++ b/generator/cybersource-rest-spec.json @@ -14,9 +14,12 @@ "application/json;charset=utf-8" ], "produces": [ - "application/json;charset=utf-8" + "application/hal+json;charset=utf-8" ], "tags": [ + { + "name": "Flex API" + }, { "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" @@ -45,21 +48,6 @@ "name": "TransactionBatches", "description": "Get a list of batch files or details of Individual file processed through the Offline Transaction Submission Services.\n" }, - { - "name": "Instrument Identifier", - "description": "The instrument identifier token type represents the tokenized PAN, a tokenized PAN can also have an associated network token used for card payments. The instrument identifier token type can also represent the tokenized account number and routing number for bank account (eCheck) payments." - }, - { - "name": "Payment Instrument", - "description": "The Payment Instrument token type represents the tokenized billing information and card expiration dates for card payments, or bank account information for eCheck payments.\u2028" - }, - { - "name": "Flex API" - }, - { - "name": "decision manager", - "description": "REST API for the Decision Manager Service" - }, { "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" @@ -108,6 +96,10 @@ "name": "Download XSD", "description": "API to download report XSDs" }, + { + "name": "decision manager", + "description": "REST API for the Decision Manager Service" + }, { "name": "File Details", "description": "API to access file information" @@ -116,6 +108,14 @@ "name": "File Downloads", "description": "API to download a file" }, + { + "name": "Instrument Identifier", + "description": "The instrument identifier token type represents the tokenized PAN, a tokenized PAN can also have an associated network token used for card payments. The instrument identifier token type can also represent the tokenized account number and routing number for bank account (eCheck) payments." + }, + { + "name": "Payment Instrument", + "description": "The Payment Instrument token type represents the tokenized billing information and card expiration dates for card payments, or bank account information for eCheck payments.\u2028" + }, { "name": "user-management", "description": "User Management API" @@ -123,6 +123,10 @@ ], "x-devcenter-metaData": { "categoryTagArray": [ + { + "name": "Flex", + "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)." + }, { "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)." @@ -132,20 +136,24 @@ "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": "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": "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": "Flex", - "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)." + "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": "Decision_Manager", "description": "For more information about Decision Manager, see the [Decision Manager Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-risk/decisionmanager/intro.html)." }, { - "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": "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": "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": "Transaction_Details", @@ -155,14 +163,6 @@ "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": "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)." @@ -170,17278 +170,3659 @@ ] }, "paths": { - "/pts/v2/payments/": { + "/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": { - "summary": "Process a Payment", - "description": "Authorize the payment for the transaction.\n", "tags": [ - "payments" + "Key Generation" ], - "operationId": "createPayment", + "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": "Payments" + "categoryTag": "Flex" }, + "produces": [ + "application/json" + ], "parameters": [ { - "name": "createPaymentRequest", "in": "body", + "name": "generatePublicKeyRequest", "required": true, "schema": { "type": "object", + "required": [ + "encryptionType" + ], "properties": { - "clientReferenceInformation": { + "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." + } + } + } + } + ], + "x-example": { + "example0": { + "summary": "Generate Key", + "value": { + "encryptionType": "None" + } + } + }, + "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": { - "code": { + "format": { "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "description": "Specifies the format of the public key; currently X.509." }, - "transactionId": { + "algorithm": { "type": "string", - "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "description": "Algorithm used to encrypt the public key." }, - "comments": { + "publicKey": { "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 American Express Direct, FDC Nashville Global, and SIX.\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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\n" - } - } + "description": "Base64 encoded public key value." } } }, - "processingInformation": { + "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": { - "capture": { - "type": "boolean", - "description": "Flag that specifies whether to also include capture service in the submitted request or not.\n\nPossible values:\n- **true**\n- **false** (default).\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": { + "kty": { "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" + "description": "Algorithm used to encrypt the public key." }, - "commerceIndicator": { + "use": { "type": "string", - "maxLength": 20, - "description": "Type of transaction. Some payment card companies use this information when determining discount rates. When you\nomit this field for **Ingenico ePayments**, the processor uses the default transaction type they have on file\nfor you instead of the default value listed here.\n" + "description": "Defines whether to use the key for encryption (enc) or verifying a signature (sig). Always returned as enc." }, - "paymentSolution": { + "kid": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n" + "description": "The key ID in JWK format." }, - "reconciliationId": { + "n": { "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" + "description": "JWK RSA Modulus" }, - "linkId": { + "e": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "description": "JWK RSA Exponent" + } + } + } + } + } + }, + "default": { + "description": "Error retrieving key.", + "schema": { + "type": "object", + "properties": { + "responseStatus": { + "properties": { + "status": { + "type": "number", + "description": "HTTP Status code." }, - "purchaseLevel": { + "reason": { "type": "string", - "maxLength": 1, - "description": "Set this field to 3 to indicate that the request includes Level III data." + "description": "Error Reason Code." }, - "reportGroup": { + "message": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "description": "Error Message." }, - "visaCheckoutId": { + "correlationId": { "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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "description": "API correlation ID." }, - "industryDataType": { - "type": "string", - "maxLength": 10, - "description": "Flag that indicates that the transaction includes airline data or restaurant data.\n\nThis field must be set to `airline` in order for airline data to be sent to the processor.\n\nFor example, if this field is not set to airline or is not included in the request, CyberSource does not send airline data to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor.\n\nWhen this field is not set to restaurant or is not included in the request, CyberSource does not send restaurant data to the processor.\n\nPossible Values:\n\n- **airline**\n- **restaurant**\n" + "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." + } + } + } }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor more information, see \"Forced Captures\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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\nFor processor-specific information, see the `auth_type` field 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#### 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\nand forced captures with the American\nExpress card type to comply with the CAPN\nrequirements:\n- Forced capture: Obtain the value for this\nfield from the authorization response.\n- Verbal authorization: You cannot obtain a\nvalue for this field so CyberSource uses the\ndefault value of `000000000000000` (15\nzeros).\n\nFor more information about using this default value, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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.\nFor details, see \"Final Authorization Indicator\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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 file5:\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\nFor processor-specific information, see the `auth_indicator` field in\n[Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" - }, - "partialAuthIndicator": { - "type": "boolean", - "description": "Flag that indicates whether the transaction is enabled for partial authorization or not. When your request\nincludes this field, this value overrides the information in your CyberSource account. For processor-specific\ninformation, see the `auth_partial_auth_indicator` field in [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\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\nPossible values:\n- **true** Enable the transaction for partial authorization.\n- **false** Do not enable the transaction for partial authorization.\n" - }, - "balanceInquiry": { - "type": "boolean", - "description": "Flag that indicates whether to return balance information.\n\nPossible values:\n- **true**\n- **false**\n" - }, - "ignoreAvsResult": { - "type": "boolean", - "description": "Flag that indicates whether to allow the capture service to run, even when the payment\nreceives an AVS decline.\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.\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. 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\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 that indicates whether to allow the capture service to run even when\nthe payment receives a CVN decline.\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", - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } + "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." } - }, - "billPayment": { - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nPossible values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\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\n**Note** For details about Mastercard bill payments or bill payments with Visa, see `bill_payment_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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.\\\n`Format: MMDD`\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", - "default": false } } }, - "bankTransferOptions": { - "type": "object", + "self": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "customerMemo": { - "type": "string", - "maxLength": 80, - "description": "Payment related information.\n\nThis information is included on the customer\u2019s statement.\n" - }, - "paymentCategoryCode": { + "href": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "description": "URI of the linked resource." }, - "settlementMethod": { + "title": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "description": "Label of the linked resource." }, - "fraudScreeningLevel": { + "method": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + "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", + "isClientSideApi": true, + "noAuth": true + }, + "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." }, - "issuerInformation": { + "cardInfo": { "type": "object", + "required": [ + "cardNumber", + "cardType" + ], "properties": { - "discretionaryData": { + "cardNumber": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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." }, - "paymentInformation": { + "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": { - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" - }, - "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\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator**`=recurring`.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n" - }, - "securityCodeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates whether a CVN code was sent. Possible values:\n\n - 0 (default): CVN service not requested. CyberSource uses this default value when you do not include\n _securityCode_ field in the request.\n - 1 (default): CVN service requested and supported. CyberSource uses this default value 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" - }, - "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. For details, see `card_product_name` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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" + "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." + } } } }, - "tokenizedCard": { - "type": "object", + "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": { - "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": { + "href": { "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "description": "URI of the linked resource." }, - "cryptogram": { + "title": { "type": "string", - "maxLength": 40, - "description": "This field is used internally." + "description": "Label of the linked resource." }, - "requestorId": { + "method": { "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" - }, - "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" - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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": {} + } + } + }, + "/pts/v2/payments": { + "post": { + "summary": "Process a Payment", + "description": "Authorize the payment for the transaction.\n", + "tags": [ + "payments" + ], + "operationId": "createPayment", + "x-devcenter-metaData": { + "categoryTag": "Payments" + }, + "parameters": [ + { + "name": "createPaymentRequest", + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "fluidData": { + "transactionId": { + "type": "string", + "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { "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 to CyberSource for decryption.\nValid values:\n- Samsung Pay: `RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=`\n**NOTE**: For other payment solutions, the value may be specific to the customer's mobile device. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\n\nFor details about the list of payment solution identifiers, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html).\n\nFor details about the encrypted payment data, see the `encrypted_payment_descriptor` field description in the [Card-Present Processing Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" - }, - "value": { + "originalTransactionId": { "type": "string", - "maxLength": 3072, - "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution a merchant uses.\n\nFor details, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html) for the specific payment- solution entry.\n" + "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" }, - "encoding": { - "type": "string", - "maxLength": 6, - "description": "Encoding method used to encrypt the payment data.\n\nValid value: Base64\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { + "developerId": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } + "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" }, - "routingNumber": { + "solutionId": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\n" } } } } }, - "orderInformation": { + "processingInformation": { "type": "object", "properties": { - "amountDetails": { + "capture": { + "type": "boolean", + "description": "Flag that specifies whether to also include capture service in the submitted request or not.\n\nPossible values:\n- **true**\n- **false** (default).\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. When you\nomit this field for **Ingenico ePayments**, the processor uses the default transaction type they have on file\nfor you instead of the default value listed here.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "industryDataType": { + "type": "string", + "maxLength": 10, + "description": "Flag that indicates that the transaction includes airline data or restaurant data.\n\nThis field must be set to `airline` in order for airline data to be sent to the processor.\n\nFor example, if this field is not set to airline or is not included in the request, CyberSource does not send airline data to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor.\n\nWhen this field is not set to restaurant or is not included in the request, CyberSource does not send restaurant data to the processor.\n\nPossible Values:\n\n- **airline**\n- **restaurant**\n" + }, + "authorizationOptions": { "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" - }, - "dutyAmount": { + "authType": { "type": "string", "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor more information, see \"Forced Captures\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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\nFor processor-specific information, see the `auth_type` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "gratuityAmount": { + "verbalAuthCode": { "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + "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#### 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" }, - "taxAmount": { + "verbalAuthTransactionId": { "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" + "maxLength": 15, + "description": "Transaction ID (TID).\n\n#### FDMS South\nThis field is required for verbal authorizations\nand forced captures with the American\nExpress card type to comply with the CAPN\nrequirements:\n- Forced capture: Obtain the value for this\nfield from the authorization response.\n- Verbal authorization: You cannot obtain a\nvalue for this field so CyberSource uses the\ndefault value of `000000000000000` (15\nzeros).\n\nFor more information about using this default value, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "nationalTaxIncluded": { + "authIndicator": { "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\nFor processor-specific information, see the national_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" + "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.\nFor details, see \"Final Authorization Indicator\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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 file5:\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\nFor processor-specific information, see the `auth_indicator` field in\n[Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\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\nFor processor-specific information, see the order_discount_management_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" + "partialAuthIndicator": { + "type": "boolean", + "description": "Flag that indicates whether the transaction is enabled for partial authorization or not. When your request\nincludes this field, this value overrides the information in your CyberSource account. For processor-specific\ninformation, see the `auth_partial_auth_indicator` field in [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\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\nPossible values:\n- **true** Enable the transaction for partial authorization.\n- **false** Do not enable the transaction for partial authorization.\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\nFor processor-specific information, see the tax_management_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" - }, - "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\nFor processor-specific information, see the total_tax_type_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" - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "balanceInquiry": { + "type": "boolean", + "description": "Flag that indicates whether to return balance information.\n\nPossible values:\n- **true**\n- **false**\n" }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "ignoreAvsResult": { + "type": "boolean", + "description": "Flag that indicates whether to allow the capture service to run, even when the payment\nreceives an AVS decline.\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.\n", + "default": false }, - "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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "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. 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\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" + } }, - "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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" + "ignoreCvResult": { + "type": "boolean", + "description": "Flag that indicates whether to allow the capture service to run even when\nthe payment receives a CVN decline.\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", + "default": false }, - "surcharge": { + "initiator": { "type": "object", "properties": { - "amount": { + "type": { "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\nFor processor-specific information, see the surcharge_amount field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "description": "This field indicates whether the transaction is a merchant-initiated transaction or customer-initiated transaction.\n\nValid values:\n- **customer**\n- **merchant**\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.\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.\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\nFor processor-specific information, see the additional_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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } } } } }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - } + "billPayment": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nPossible values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" }, - "serviceFeeAmount": { + "billPaymentType": { "type": "string", - "maxLength": 15, - "description": "Service fee. Required for service fee transactions.\n" + "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\n**Note** For details about Mastercard bill payments or bill payments with Visa, see `bill_payment_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "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\nFor details, see the `original_amount` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "originalCurrency": { + "dateToCapture": { "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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + "maxLength": 4, + "description": "Date on which you want the capture to occur. This field is supported only for CyberSource through VisaNet.\\\n`Format: MMDD`\n" } } }, - "billTo": { + "recurringOptions": { "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#### 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**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_firstname` 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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", + "default": false }, - "lastName": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", + "default": false + } + } + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "declineAvsFlags": { "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + "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" }, - "middleName": { + "secCode": { "type": "string", - "maxLength": 60, - "description": "Customer\u2019s middle name.\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "nameSuffix": { + "terminalCity": { "type": "string", - "maxLength": 60, - "description": "Customer\u2019s name suffix.\n" + "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" }, - "title": { + "terminalState": { "type": "string", - "maxLength": 60, - "description": "Title.\n" + "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" }, - "company": { + "effectiveDate": { "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.\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" + "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" }, - "address1": { + "partialPaymentId": { "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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "address2": { + "customerMemo": { "type": "string", - "maxLength": 60, - "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" + "maxLength": 80, + "description": "Payment related information.\n\nThis information is included on the customer\u2019s statement.\n" }, - "address3": { + "paymentCategoryCode": { "type": "string", - "maxLength": 60, - "description": "Additional address information (third line of the billing address)\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "address4": { + "settlementMethod": { "type": "string", - "maxLength": 60, - "description": "Additional address information (fourth line of the billing address)\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "locality": { + "fraudScreeningLevel": { "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\nFor processor-specific information, see the `bill_city` 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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + } + } + }, + "purchaseOptions": { + "type": "object", + "properties": { + "isElectronicBenefitsTransfer": { + "type": "boolean", + "description": "Flag that indicates that this transaction is an EBT transaction.Possible values:\n- **true**\n- **false**\n" }, - "administrativeArea": { + "type": { "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\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 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 `bill_state` 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" + "maxLength": 6, + "description": "This field is used in PIN Debit EBT transaction as a flag to identify EBT vouchers.Possible values:\n- `EBT_VOUCHER`: Indicates EBT voucher\n" + } + } + }, + "electronicBenefitsTransfer": { + "type": "object", + "properties": { + "category": { + "type": "string", + "maxLength": 4, + "description": "Flag that specifies the category for the EBT transaction. Possible 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" }, - "postalCode": { + "voucherSerialNumber": { "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 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 `bill_zip` 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" + "maxLength": 15, + "description": "The serial number printed on the EBT voucher.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" }, - "country": { + "expirationMonth": { "type": "string", "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" }, - "district": { + "expirationYear": { "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" + "maxLength": 4, + "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" }, - "buildingNumber": { + "type": { "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" + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "email": { + "useAs": { "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" + "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" }, - "phoneNumber": { + "sourceAccountType": { "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + "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" }, - "phoneType": { + "securityCode": { "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" + "maxLength": 4, + "description": "Card Verification Number.\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator**`=recurring`.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n" + }, + "securityCodeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates whether a CVN code was sent. Possible values:\n\n - 0 (default): CVN service not requested. CyberSource uses this default value when you do not include\n _securityCode_ field in the request.\n - 1 (default): CVN service requested and supported. CyberSource uses this default value 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" + }, + "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. For details, see `card_product_name` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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" } } }, - "shipTo": { + "tokenizedCard": { "type": "object", "properties": { - "firstName": { + "number": { "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + "maxLength": 20, + "description": "Customer\u2019s payment network token value.\n" }, - "lastName": { + "expirationMonth": { "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + "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" }, - "address1": { + "expirationYear": { "type": "string", - "maxLength": 60, - "description": "First line of the shipping address." + "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" }, - "address2": { + "type": { "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address." + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "locality": { + "cryptogram": { "type": "string", - "maxLength": 50, - "description": "City of the shipping address." + "maxLength": 40, + "description": "This field is used internally." }, - "administrativeArea": { + "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" + }, + "assuranceLevel": { "type": "string", "maxLength": 2, - "description": "State or province of the shipping address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + "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" }, - "postalCode": { + "storageMethod": { "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" + "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" }, - "country": { + "securityCode": { "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", - "maxLength": 2 + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "district": { + "descriptor": { "type": "string", - "maxLength": 50, - "description": "Neighborhood, community, or region within a city or municipality." + "maxLength": 128, + "description": "The identifier for a payment solution, which is sending the encrypted payment data to CyberSource for decryption.\nValid values:\n- Samsung Pay: `RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=`\n**NOTE**: For other payment solutions, the value may be specific to the customer's mobile device. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\n\nFor details about the list of payment solution identifiers, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html).\n\nFor details about the encrypted payment data, see the `encrypted_payment_descriptor` field description in the [Card-Present Processing Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" }, - "buildingNumber": { + "value": { "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" + "maxLength": 3072, + "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution a merchant uses.\n\nFor details, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html) for the specific payment- solution entry.\n" }, - "phoneNumber": { + "encoding": { "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address." + "maxLength": 6, + "description": "Encoding method used to encrypt the payment data.\n\nValid value: Base64\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } }, - "company": { + "routingNumber": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } }, - "lineItems": { - "type": "array", - "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "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" - }, - "quantity": { - "type": "number", - "minimum": 1, - "maximum": 9999999999, - "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "subTypeName": { + "type": "string", + "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n- `DEBIT` (use this for a PIN debit transaction)\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "weight": { - "type": "string", - "maxLength": 9, - "description": "Weight of the item. See Numbered Elements." - }, - "weightIdentifier": { - "type": "string", - "maxLength": 1, - "description": "Type of weight. See Numbered Elements.\n\nPossible values:\n- B: Billed weight\n- N: Actual net weight\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\nspecifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC).\n\nSee Numbered Elements.\n" - }, - "referenceDataCode": { - "type": "string", - "maxLength": 2, - "description": "Code that identifies the value of the corresponding item_#_referenceData_#_number field. See Numbered Elements.\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" - }, - "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" } } } - }, - "invoiceDetails": { + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { "type": "object", "properties": { - "invoiceNumber": { + "totalAmount": { "type": "string", - "description": "Invoice Number." + "maxLength": 19, + "description": "Grand total for the order. This value cannot be negative. You can include a decimal point (.), but no other special characters. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\n" }, - "barcodeNumber": { + "currency": { "type": "string", - "description": "Barcode Number." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "expirationDate": { + "discountAmount": { "type": "string", - "description": "Expiration Date." + "maxLength": 15, + "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" }, - "purchaseOrderNumber": { + "dutyAmount": { "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" + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" }, - "purchaseOrderDate": { + "gratuityAmount": { "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" + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" }, - "purchaseContactName": { + "taxAmount": { "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" + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" }, - "vatInvoiceReferenceNumber": { + "nationalTaxIncluded": { "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" + "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\nFor processor-specific information, see the national_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" }, - "commodityCode": { + "taxAppliedAfterDiscount": { "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. Possible value:\n\n - 1000: Gift card\n\nThis field is supported only for **American Express Direct**.\n" + "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\nFor processor-specific information, see the order_discount_management_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" }, - "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" - } - } - } + "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\nFor processor-specific information, see the tax_management_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" }, - "referenceDataCode": { + "taxTypeCode": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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" + "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\nFor processor-specific information, see the total_tax_type_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" }, - "referenceDataNumber": { + "freightAmount": { "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" - } - } - }, - "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" + "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" }, - "shippingMethod": { + "foreignAmount": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s government-assigned tax identification number.\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\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.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 Developer Guide Using the SCMP API.](https://www.cybersource.com/developers/documentation/fraud_management/)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "hostName": { - "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." - }, - "ipAddress": { - "type": "string", - "maxLength": 48, - "description": "IP address of the customer.\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": { + "foreignCurrency": { "type": "string", - "description": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" + "maxLength": 5, + "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "alternateName": { + "exchangeRate": { "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" + "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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "contact": { + "exchangeRateTimeStamp": { "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" + "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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" }, - "address1": { + "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\nFor processor-specific information, see the surcharge_amount field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "description": { + "type": "string", + "description": "Merchant-defined field for describing the surcharge amount." + } + } + }, + "settlementAmount": { "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" + "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.\n" }, - "locality": { + "settlementCurrency": { "type": "string", - "maxLength": 13, - "description": "Merchant's City.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "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.\n" }, - "country": { + "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\nFor processor-specific information, see the additional_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" + } + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } + }, + "serviceFeeAmount": { "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" }, - "postalCode": { + "originalAmount": { "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "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\nFor details, see the `original_amount` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "administrativeArea": { + "originalCurrency": { "type": "string", - "maxLength": 3, - "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + }, + "cashbackAmount": { + "type": "string", + "maxLength": 13, + "description": "Cashback amount requested by the customer. If a cashback amount is included in the request, it must be included in the orderInformation.amountDetails.totalAmount value.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\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": "Local date and time at your physical location. Include both the date and time in this field or leave it blank.\nThis field is supported only for **CyberSource through VisaNet**.\n\nFor processor-specific information, see the `transaction_local_date_time` 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\nFormat: `YYYYMMDDhhmmss`, where:\n\n - YYYY = year\n - MM = month\n - DD = day\n - hh = hour\n - mm = minutes\n - ss = seconds\n\n For processor-specific information, see the `transaction_local_date_time` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "serviceFeeDescriptor": { + "billTo": { "type": "object", "properties": { - "name": { + "firstName": { "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" + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\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**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_firstname` 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" }, - "contact": { + "lastName": { "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" + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" }, - "state": { + "middleName": { "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" - } - } - } - } - }, - "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": { + "maxLength": 60, + "description": "Customer\u2019s middle name.\n" + }, + "nameSuffix": { "type": "string", - "maxLength": 15, - "description": "Unique identifier assigned by the payment card company to the sub-merchant." + "maxLength": 60, + "description": "Customer\u2019s name suffix.\n" }, - "name": { + "title": { "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" + "maxLength": 60, + "description": "Title.\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.\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": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" }, - "locality": { + "address2": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 60, + "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" }, - "administrativeArea": { + "address3": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 60, + "description": "Additional address information (third line of the billing address)\n" }, - "region": { + "address4": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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\nFor processor-specific information, see the `bill_city` 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" + }, + "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\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 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 `bill_state` 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" }, "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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 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 `bill_zip` 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" }, "country": { "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s country. Use the two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\n" + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + }, + "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": 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" + "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" }, "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" + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + }, + "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" } } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - }, - "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\nprocessor for requirements.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be\na value that FDC Nashville Global issued to you.\n\nFor details, see the `terminal_id` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**For Payouts**: This field is applicable for CtV.\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\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 details, see the `terminal_serial_number` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. Use the `terminalId` field to\nidentify the main terminal at your retail location. If your retail location has multiple terminals, use this\n`laneNumber` field to identify the terminal used for the transaction.\n\nThis field is a pass-through, which means that CyberSource does not check the value or modify the value in any\nway before sending it to the processor.\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\n#### FDC Nashville Global\nOnly values 7, 8, and 9 are supported.\n\n#### GPN\nOnly values 6, 7, 8, and 9 are supported.\n\n#### TSYS Acquiring Solutions\nOnly value 6 is supported.\nFor details, see the `cat_level` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "entryMode": { - "type": "string", - "maxLength": 11, - "description": "Method of entering credit 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.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD).\n - `swiped`: Read from credit card magnetic stripe.\n\nThe contact, contactless, and msd values are supported only for EMV transactions.\n\nFor details, see the `pos_entry_mode` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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.\n\nThe values of 4 and 5 are supported only for EMV transactions.\n* Applicable only for CTV for Payouts.\n\nFor processor-specific details, see the `terminal_capability` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "pinEntryCapability": { - "type": "integer", - "minimum": 1, - "maximum": 1, - "description": "A one-digit code that identifies the capability of terminal to capture PINs. \nThis code does not necessarily mean that a PIN was entered or is included in this message.\n\nPOS terminal\u2019s capability. Possible values:\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.*\n* The values of 4 and 5 are supported only for EMV transactions.\n\nFor Payouts: This field is applicable for CtV.\n\nFor details, see the `terminal_capability` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { + "shipTo": { "type": "object", "properties": { - "tags": { + "firstName": { "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" - }, - "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" + "maxLength": 60, + "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" }, - "cardSequenceNumber": { + "lastName": { "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\nFor details, see `emv_request_card_sequence_number` field description in the [Card-Present Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "maxLength": 60, + "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", - "default": false + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address." }, - "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**.\n\n**NOTE**: This field is required when an EMV transaction fails for a technical reason. Do not include this field when the EMV terminal does not have any applications in common with the EMV card.\n\nFor details, see the `emv_request_fallback_condition` field description in the [Card-Present Processing Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address." + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City 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\nand 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.", + "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" } } }, - "amexCapnData": { - "type": "string", - "maxLength": 12, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nPossible values:\n- Y: Transaction was stored and then forwarded.\n- N (default): Transaction was not stored and then forwarded.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" - }, - "cardholderVerificationMethod": { + "lineItems": { "type": "array", "items": { - "type": "string", - "description": "Complete list of cardholder verification methods (CVMs) supported by the terminal.\n\nPossible values:\n- PIN\n- Signature\n\n**NOTE**: You can submit one of the values or both in a request.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" - }, - "example": [ - "PIN", - "Signature" - ] + "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" + }, + "productSku": { + "type": "string", + "maxLength": 255, + "description": "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" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "weight": { + "type": "string", + "maxLength": 9, + "description": "Weight of the item. See Numbered Elements." + }, + "weightIdentifier": { + "type": "string", + "maxLength": 1, + "description": "Type of weight. See Numbered Elements.\n\nPossible values:\n- B: Billed weight\n- N: Actual net weight\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\nspecifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC).\n\nSee Numbered Elements.\n" + }, + "referenceDataCode": { + "type": "string", + "maxLength": 2, + "description": "Code that identifies the value of the corresponding item_#_referenceData_#_number field. See Numbered Elements.\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" + }, + "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" + } + } + } }, - "terminalInputCapability": { - "type": "array", - "items": { - "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\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n\nFor details, see the `terminal_input_capabilities_#` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", - "type": "string" - }, - "example": [ - "Keyed", - "Swiped", - "Contact", - "QRcode" - ] + "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. Possible value:\n\n - 1000: Gift card\n\nThis field is supported only for **American Express Direct**.\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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" + } + } }, - "terminalCardCaptureCapability": { + "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" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { "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\nThis field is supported only on American Express Direct.\n" + "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" }, - "terminalOutputCapability": { + "dateOfBirth": { "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 only on American Express Direct.\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 only on American Express Direct and SIX.\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "deviceId": { + "vatRegistrationNumber": { "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\nIn the Credit Card Guide for the auth service: This field is supported only on American Express Direct, FDC\nNashville Global, and SIX.\n" + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\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" }, - "encryptedPin": { + "companyTaxId": { "type": "string", - "maxLength": 16, - "description": "Encrypted PIN.\n\nThis value is provided by the client software that is installed on the POS terminal.\n\nIn the Credit Card Guide for the auth service: This field is supported only on American Express Direct, FDC\nNashville Global, and SIX.\n" + "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" }, - "encryptedKeySerialNumber": { - "type": "string", - "maxLength": 20, - "description": "This is a combination of the device's unique identifier and a transaction counter that is used in the process of\ndecrypting the encrypted PIN.\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" + "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\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.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } }, - "partnerSdkVersion": { + "hashedPassword": { "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" - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } + "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 Developer Guide Using the SCMP API.](https://www.cybersource.com/developers/documentation/fraud_management/)\n" } } }, - "installmentInformation": { + "recipientInformation": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "planType": { + "accountId": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "totalAmount": { + "lastName": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "firstInstallmentDate": { + "postalCode": { "type": "string", - "maximum": 6, - "description": "Date of the first installment payment. Format: YYMMDD. When you do not include this field, CyberSource sends a\nstring 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 file5:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" - }, - "invoiceData": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "hostName": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." }, - "paymentType": { + "ipAddress": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 48, + "description": "IP address of the customer.\n" }, - "eligibilityInquiry": { + "userAgent": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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" } } - } - }, - "example": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "commerceIndicator": "internet" - }, - "aggregatorInformation": { - "subMerchant": { - "cardAcceptorId": "1234567890", - "country": "US", - "phoneNumber": "650-432-0000", - "address1": "900 Metro Center", - "postalCode": "94404-2775", - "locality": "Foster City", - "name": "Visa Inc", - "administrativeArea": "CA", - "region": "PEN", - "email": "test@cybs.com" - }, - "name": "V-Internatio", - "aggregatorId": "123456789" - }, - "orderInformation": { - "billTo": { - "country": "US", - "lastName": "VDP", - "address2": "Address 2", - "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": { + "merchantInformation": { "type": "object", "properties": { - "self": { + "merchantDescriptor": { "type": "object", "properties": { - "href": { + "name": { "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." + "description": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" }, - "method": { + "alternateName": { "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": { + "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", - "description": "This is the endpoint of the resource that was created by the successful request." + "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" }, - "method": { + "address1": { "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": { + "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", - "description": "This is the endpoint of the resource that was created by the successful request." + "maxLength": 13, + "description": "Merchant's City.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "method": { + "country": { "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + "maxLength": 2, + "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [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": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - AUTHORIZED\n - PARTIAL_AUTHORIZED\n - AUTHORIZED_PENDING_REVIEW\n - DECLINED\n - INVALID_REQUEST\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\n" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { + }, + "salesOrganizationId": { "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" + "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" }, - "message": { + "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", - "description": "The detail message related to the status and reason listed above." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - } - } - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { + "vatRegistrationNumber": { "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\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" }, - "submitLocalDateTime": { + "cardAcceptorReferenceNumber": { "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" + "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" }, - "ownerMerchantId": { + "transactionLocalDateTime": { "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "bankTransferOptions": { + "maxLength": 14, + "description": "Local date and time at your physical location. Include both the date and time in this field or leave it blank.\nThis field is supported only for **CyberSource through VisaNet**.\n\nFor processor-specific information, see the `transaction_local_date_time` 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\nFormat: `YYYYMMDDhhmmss`, where:\n\n - YYYY = year\n - MM = month\n - DD = day\n - hh = hour\n - mm = minutes\n - ss = seconds\n\n For processor-specific information, see the `transaction_local_date_time` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "serviceFeeDescriptor": { "type": "object", "properties": { - "settlementMethod": { + "name": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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" }, - "fraudScreeningLevel": { + "contact": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + "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" } } } } }, - "processorInformation": { + "aggregatorInformation": { "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\nFor processor-specific information, see the auth_indicator field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "approvalCode": { - "type": "string", - "description": "Authorization code. Returned only when the processor returns this value.\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\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "networkTransactionId": { + "aggregatorId": { "type": "string", - "description": "The description for this field is not available." + "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" }, - "providerTransactionId": { + "name": { "type": "string", - "description": "The description for this field is not available." + "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" }, - "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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\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": 32, - "description": "Processor-defined response category code. The associated detail error code is in the `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: 32\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" - }, - "codeRaw": { - "type": "string", - "maxLength": 10, - "description": "AVS result code sent directly from the processor. Returned only when the processor returns this value.\nImportant Do not use this field to evaluate the result of AVS. Use for debugging purposes only.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 2, - "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" - } - } - }, - "electronicVerificationResults": { + "subMerchant": { "type": "object", "properties": { - "code": { + "cardAcceptorId": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "maxLength": 15, + "description": "Unique identifier assigned by the payment card company to the sub-merchant." }, - "codeRaw": { + "name": { "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s last name" + "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" }, - "email": { + "address1": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "emailRaw": { + "locality": { "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s email address." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "phoneNumber": { + "administrativeArea": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "phoneNumberRaw": { + "region": { "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s phone number." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "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": { + "country": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + "maxLength": 3, + "description": "Sub-merchant\u2019s country. Use the two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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": { + "email": { "type": "string", - "maxLength": 3, - "description": "Mapped response code for Visa Secure and American Express SafeKey.\n\nFor processor-specific details, see `auth_cavv_response_code` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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" }, - "codeRaw": { + "phoneNumber": { "type": "string", - "maxLength": 3, - "description": "Raw response code sent directly from the processor for Visa Secure and American Express SafeKey:\n\nFor processor-specific details, see `auth_cavv_response_code_raw` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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" } } - }, - "systemTraceAuditNumber": { + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "cavv": { "type": "string", - "maxLength": 6, - "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\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\nFor details, see `receipt_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "maxLength": 40, + "description": "Cardholder authentication verification value (CAVV)." }, - "paymentAccountReferenceNumber": { + "cavvAlgorithm": { "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.\n" + "maxLength": 1, + "description": "Algorithm used to generate the CAVV for Visa Secure or the UCAF authentication data for Mastercard Identity Check.\n" }, - "transactionIntegrityCode": { + "eciRaw": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "amexVerbalAuthReferenceNumber": { + "paresStatus": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "salesSlipNumber": { - "type": "integer", - "maximum": 99999, - "description": "Transaction identifier that CyberSource generates. You have the option of printing the sales slip number on\nthe receipt.\n\nThis field is supported only for **JCN Gateway**.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "masterCardServiceCode": { + "xid": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "masterCardServiceReplyCode": { + "ucafAuthenticationData": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "masterCardAuthenticationType": { + "ucafCollectionIndicator": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + }, + "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\nprocessor for requirements.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be\na value that FDC Nashville Global issued to you.\n\nFor details, see the `terminal_id` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**For Payouts**: This field is applicable for CtV.\n" }, - "name": { + "terminalSerialNumber": { "type": "string", - "maxLength": 30, - "description": "Name of the Processor.\n" + "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\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 details, see the `terminal_serial_number` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "routing": { - "type": "object", - "properties": { - "network": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the transaction was routed on a credit network, a debit network, or the STAR signature debit\nnetwork.\n\nPossible values:\n- `C`: Credit network\n- `D`: Debit network (without signature)\n- `S`: STAR signature debit network\n\nThis field is supported only on FDC Nashville Global.\n\nFor details, see the `routing_network_type` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "networkName": { - "type": "string", - "maxLength": 10, - "description": "Name of the network on which the transaction was routed.\n\nThis field is supported only on FDC Nashville Global.\n\nFor details, see the `routing_network_label` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nThis field is supported only on FDC Nashville Global.\n\nFor details, see the `routing_signature_cvm_required` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "merchantNumber": { - "type": "string", - "maxLength": 15, - "description": "Identifier that was assigned to you by your acquirer.\n\nThis value must be printed on the receipt.\n\nThis field is supported only on **American Express Direct**, **FDC Nashville Global**, and **SIX**.\n" - } - } - }, - "issuerInformation": { - "type": "object", - "properties": { - "country": { + "laneNumber": { "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.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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. Use the `terminalId` field to\nidentify the main terminal at your retail location. If your retail location has multiple terminals, use this\n`laneNumber` field to identify the terminal used for the transaction.\n\nThis field is a pass-through, which means that CyberSource does not check the value or modify the value in any\nway before sending it to the processor.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\n#### FDC Nashville Global\nOnly values 7, 8, and 9 are supported.\n\n#### GPN\nOnly values 6, 7, 8, and 9 are supported.\n\n#### TSYS Acquiring Solutions\nOnly value 6 is supported.\nFor details, see the `cat_level` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "responseCode": { + "entryMode": { "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 field is supported only on FDC Nashville Global and SIX.\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 returned only for tokenized transactions.\nYou can use this value on the receipt that you give to the cardholder.\n\n**Note** This field is returned only for CyberSource through VisaNet and FDC Nashville Global.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 85\n- Field: American Express last 4 PAN return indicator.\n" - } - } + "maxLength": 11, + "description": "Method of entering credit 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.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD).\n - `swiped`: Read from credit card magnetic stripe.\n\nThe contact, contactless, and msd values are supported only for EMV transactions.\n\nFor details, see the `pos_entry_mode` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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" - }, - "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" - } - } + "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.\n\nThe values of 4 and 5 are supported only for EMV transactions.\n* Applicable only for CTV for Payouts.\n\nFor processor-specific details, see the `terminal_capability` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "accountFeatures": { + "pinEntryCapability": { + "type": "integer", + "minimum": 1, + "maximum": 1, + "description": "A one-digit code that identifies the capability of terminal to capture PINs. \nThis code does not necessarily mean that a PIN was entered or is included in this message.\n\nPOS terminal\u2019s capability. Possible values:\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.*\n* The values of 4 and 5 are supported only for EMV transactions.\n\nFor Payouts: This field is applicable for CtV.\n\nFor details, see the `terminal_capability` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { - "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" - }, - "accountStatus": { + "tags": { "type": "string", - "maxLength": 1, - "description": "Possible values:\n\n - `N`: Nonregulated\n - `R`: Regulated\n\n**Note** This field is returned only for CyberSource through VisaNet.\n" + "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" }, - "balanceAmount": { - "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\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" }, - "balanceAmountType": { + "cardSequenceNumber": { "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" + "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\nFor details, see `emv_request_card_sequence_number` field description in the [Card-Present Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "currency": { - "type": "string", + "fallback": { + "type": "boolean", "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\nFor details, see `auth_account_balance_currency` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "balanceSign": { - "type": "string", - "maxLength": 1, - "description": "Sign for the remaining balance on the account. Returned only when the processor returns this value. Possible values:\n\nPossible values:\n - **+**\n - **-**\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**Processor specific maximum length**:\n\n - Chase Paymentech Solutions: 1\n - Litle: 13\n" - }, - "category": { - "type": "string", - "maxLength": 7, - "description": "#### 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, seepag the Product ID table on the\n[Visa Request & Response Codes web page.](https://developer.visa.com/guides/request_response_codes) For descriptions of the\nMastercard product IDs, see \"Product IDs\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_commercial` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details, see `auth_card_healthcare` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_payroll` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_level_3_eligible` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_pinless_debit` reply field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_signature_debit` reply field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `auth_card_prepaid` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", + "default": false }, - "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\nFor details, see `auth_card_regulated` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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**.\n\n**NOTE**: This field is required when an EMV transaction fails for a technical reason. Do not include this field when the EMV terminal does not have any applications in common with the EMV card.\n\nFor details, see the `emv_request_fallback_condition` field description in the [Card-Present Processing Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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.\n" - }, - "authorizedAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount that was authorized.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } + "amexCapnData": { + "type": "string", + "maxLength": 12, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" - }, - "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": 12, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "installmentInformation": { - "type": "object", - "properties": { - "additionalCosts": { + "trackData": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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" }, - "additionalCostsPercentage": { + "storeAndForwardIndicator": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nPossible values:\n- Y: Transaction was stored and then forwarded.\n- N (default): Transaction was not stored and then forwarded.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" }, - "amountFunded": { + "cardholderVerificationMethod": { + "type": "array", + "items": { + "type": "string", + "description": "Complete list of cardholder verification methods (CVMs) supported by the terminal.\n\nPossible values:\n- PIN\n- Signature\n\n**NOTE**: You can submit one of the values or both in a request.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" + }, + "example": [ + "PIN", + "Signature" + ] + }, + "terminalInputCapability": { + "type": "array", + "items": { + "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\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n\nFor details, see the `terminal_input_capabilities_#` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", + "type": "string" + }, + "example": [ + "Keyed", + "Swiped", + "Contact", + "QRcode" + ] + }, + "terminalCardCaptureCapability": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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\nThis field is supported only on American Express Direct.\n" }, - "amountRequestedPercentage": { + "terminalOutputCapability": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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 only on American Express Direct.\n" }, - "annualFinancingCost": { + "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 only on American Express Direct and SIX.\n" + }, + "deviceId": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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" }, - "annualInterestRate": { + "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\nIn the Credit Card Guide for the auth service: This field is supported only on American Express Direct, FDC\nNashville Global, and SIX.\n" + }, + "encryptedPin": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 16, + "description": "Encrypted PIN.\n\nThis value is provided by the client software that is installed on the POS terminal.\n\nIn the Credit Card Guide for the auth service: This field is supported only on American Express Direct, FDC\nNashville Global, and SIX.\n" }, - "expenses": { + "encryptedKeySerialNumber": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 20, + "description": "This is a combination of the device's unique identifier and a transaction counter that is used in the process of\ndecrypting the encrypted PIN.\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" }, - "expensesPercentage": { + "partnerSdkVersion": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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" + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "fees": { + "frequency": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "feesPercentage": { + "planType": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "insurance": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "insurancePercentage": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maximum": 6, + "description": "Date of the first installment payment. Format: YYMMDD. When you do not include this field, CyberSource sends a\nstring 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 file5:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" }, - "monthlyInterestRate": { + "invoiceData": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "taxes": { + "paymentType": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "taxesPercentage": { + "eligibilityInquiry": { "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" } } } }, "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" - } + "processingInformation": { + "commerceIndicator": "internet" }, - "processorInformation": { - "approvalCode": "888888", - "cardVerification": { - "resultCode": "" + "aggregatorInformation": { + "subMerchant": { + "cardAcceptorId": "1234567890", + "country": "US", + "phoneNumber": "650-432-0000", + "address1": "900 Metro Center", + "postalCode": "94404-2775", + "locality": "Foster City", + "name": "Visa Inc", + "administrativeArea": "CA", + "region": "PEN", + "email": "test@cybs.com" }, - "avs": { - "code": "X", - "codeRaw": "I1" + "name": "V-Internatio", + "aggregatorId": "123456789" + }, + "orderInformation": { + "billTo": { + "country": "US", + "lastName": "VDP", + "address2": "Address 2", + "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" }, - "responseCode": "100" + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "5555555555554444", + "securityCode": "123", + "expirationMonth": "12", + "type": "002" + } } } } - }, - "400": { - "description": "Invalid request.", + } + ], + "responses": { + "201": { + "description": "Successful response.", "schema": { + "title": "ptsV2PaymentsPost201Response", "type": "object", - "title": "ptsV2PaymentsPost400Response", "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, "submitTimeUtc": { "type": "string", "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - 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 - DEBIT_CARD_USEAGE_EXCEEDD_LIMIT\n" + "description": "The status of the submitted transaction.\n\nPossible values:\n - AUTHORIZED\n - PARTIAL_AUTHORIZED\n - AUTHORIZED_PENDING_REVIEW\n - DECLINED\n - INVALID_REQUEST\n" }, - "message": { + "reconciliationId": { "type": "string", - "description": "The detail message related to the status and reason listed above." + "maxLength": 60, + "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\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" + "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" + }, + "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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Simple Authorization(Internet)", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "commerceIndicator": "internet" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + } + } + } + } }, - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12" - } - } - } - }, - "example1": { - "summary": "Simple Authorization(Retail)", - "value": { - "clientReferenceInformation": { - "code": "TC50171_8" - }, - "pointOfSaleInformation": { - "terminalId": "001", - "cardPresent": "Y", - "entryMode": "keyed", - "terminalCapability": "2" - }, - "processingInformation": { - "commerceIndicator": "retail" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "108.00", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "5555555555554444", - "securityCode": "123", - "expirationMonth": "12", - "type": "002" - } - } - } - }, - "example2": { - "summary": "Payment with Payment Instrument Token", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "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" - }, - "amountDetails": { - "totalAmount": "22", - "currency": "USD" - } - }, - "paymentInformation": { - "customer": { - "customerId": "7500BB199B4270EFE05340588D0AFCAD" - } - } - } - }, - "example3": { - "summary": "Payment Network Tokenization", - "value": { - "clientReferenceInformation": { - "code": "TC_123122" - }, - "processingInformation": { - "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" - }, - "amountDetails": { - "totalAmount": "100", - "currency": "USD" - } - }, - "paymentInformation": { - "tokenizedCard": { - "expirationYear": "2031", - "number": "4111111111111111", - "expirationMonth": "12", - "transactionType": "1" - } - }, - "consumerAuthenticationInformation": { - "cavv": "AAABCSIIAAAAAAACcwgAEMCoNh+=", - "xid": "T1Y0OVcxMVJJdkI0WFlBcXptUzE=" - } - } - }, - "example4": { - "summary": "Digital Payment - GooglePay", - "value": { - "clientReferenceInformation": { - "code": "TC_1231223" - }, - "processingInformation": { - "paymentSolution": "012", - "commerceIndicator": "internet" - }, - "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=" - } - } - } - }, - "example5": { - "summary": "Digital Payments - ApplePay", - "value": { - "clientReferenceInformation": { - "code": "TC_1231223" - }, - "processingInformation": { - "paymentSolution": "001", - "commerceIndicator": "internet" - }, - "orderInformation": { - "billTo": { - "country": "US", - "firstName": "John", - "lastName": "Deo", - "phoneNumber": "6504327113", - "address2": "Desk M3-5573", - "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=" - } - } - } - }, - "example6": { - "summary": "CyberSource MPOS - EMV", - "value": { - "clientReferenceInformation": { - "code": "TC50171_16" - }, - "pointOfSaleInformation": { - "cardPresent": "Y", - "catLevel": "1", - "endlessAisleTransactionIndicator": "true", - "entryMode": "contact", - "terminalCapability": "1", - "emv": { - "fallbackCondition": "1", - "fallback": "true" - } - }, - "processingInformation": { - "commerceIndicator": "retail", - "paymentSolution": "011" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "15.0", - "currency": "USD" - } - }, - "paymentInformation": { - "fluidData": { - "descriptor": "EMV.PAYMENT.AnywhereCommerce.Walker", - "value": "ewogICJkYXRhIiA6ICJOZmNwRURiK1dLdzBnQkpsaTRcL1hlWm1ITzdUSng0bnRoMnc2Mk9ITVJQK3hCRlFPdFE0WWpRcnY0RmFkOHh6VExqT2VFQm5iNHFzeGZMYTNyNXcxVEdXblFGQnNzMWtPYnA0XC95alNtVE1JSGVjbGc5OFROaEhNb0VRcjJkRkFqYVpBTFAxSlBsdVhKSVwvbTZKSmVwNGh3VHRWZE16Z2laSUhnaWFCYzNXZVd1ZnYzc1l0cGRaZDZYZENEUFdLeXFkYjBJdUtkdkpBPT0iLAogICJzaWduYXR1cmUiIDogIkFxck1pKzc0cm1GeVBKVE9HN3NuN2p5K1YxTlpBZUNJVE56TW01N1B5cmc9IiwKICAic2lnbmF0dXJlQWxnSW5mbyIgOiAiSE1BQ3dpdGhTSEEyNTYiLAogICJoZWFkZXIiIDogewogICAgInRyYW5zYWN0aW9uSWQiIDogIjE1MTU2MjI2NjIuMTcyMjIwIiwKICAgICJwdWJsaWNLZXlIYXNoIiA6ICJcLzdmdldqRVhMazJPRWpcL3Z5bk1jeEZvMmRWSTlpRXVoT2Nab0tHQnpGTmM9IiwKICAgICJhcHBsaWNhdGlvbkRhdGEiIDogIkN5YmVyU291cmNlLlZNcG9zS2l0IiwKICAgICJlcGhlbWVyYWxQdWJsaWNLZXkiIDogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRW1JN0tScnRNN2NNelk5Zmw2UWt2NEQzdE9jU0NYR1hoOFwvK2R4K2s5c1Zrbk05UFQrOXRqMzk2YWF6QjRcL0hYaWlLRW9DXC9jUzdoSzF6UFk3MVwvN0pUUT09IgogIH0sCiAgInZlcnNpb24iIDogIjEuMCIKfQ==" - } - } - } - }, - "example7": { - "summary": "Zero Dollar Authorization", - "value": { - "clientReferenceInformation": { - "code": "1234567890" - }, - "processingInformation": { - "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" - }, - "amountDetails": { - "totalAmount": 0, - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "5555555555554444", - "securityCode": "123", - "expirationMonth": "12" - } - } - } - }, - "example8": { - "summary": "Level II Data", - "value": { - "clientReferenceInformation": { - "code": "TC50171_12" - }, - "processingInformation": { - "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" - }, - "invoiceDetails": { - "purchaseOrderNumber": "LevelII Auth Po" - }, - "amountDetails": { - "totalAmount": "112.00", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12", - "type": "001" - } - } - } - }, - "example9": { - "summary": "Level III Data", - "value": { - "clientReferenceInformation": { - "code": "TC50171_14" - }, - "processingInformation": { - "commerceIndicator": "internet", - "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" - } - } - } - }, - "example10": { - "summary": "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" - } - } - } - }, - "example11": { - "summary": "Electronic Check Debits", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "commerceIndicator": "internet" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "100", - "currency": "USD" - } - }, - "paymentInformation": { - "bank": { - "account": { - "number": "4100", - "type": "C" - }, - "routingNumber": "071923284" - } - } - } - }, - "example12": { - "summary": "Service Fees with Credit Card transaction", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "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" - }, - "amountDetails": { - "totalAmount": "2325.00", - "currency": "USD", - "serviceFeeAmount": "30.0" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12" - } - }, - "merchantInformation": { - "serviceFeeDescriptor": { - "name": "CyberVacations Service Fee", - "contact": "800-999-9999", - "state": "CA" - } - } - } - } - } - } - }, - "/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" - }, - "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": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { - "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - }, - "reason": { - "type": "string", - "description": "Reason for the authorization reversal. Possible value:\n\n - `34`: Suspected fraud\n\nCyberSource ignores this field for processors that do not support this value.\n\nFor details, see `auth_reversal_reason` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": "number", - "minimum": 1, - "maximum": 9999999999, - "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - REVERSED\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "reversalAmountDetails": { - "type": "object", - "properties": { - "reversedAmount": { - "type": "string", - "maxLength": 15, - "description": "Total reversed amount.\n\nFor details, see `auth_reversal_amount` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "originalTransactionAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount of the original transaction.\n\nFor details, see `original_transaction_amount` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - }, - "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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\n" - }, - "responseCategoryCode": { - "type": "string", - "maxLength": 32, - "description": "Processor-defined response category code. The associated detail error code is in the `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: 32\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 field is supported only on FDC Nashville Global and 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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" - } - } - } - } - } - }, - "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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" - } - } - } - }, - "example1": { - "summary": "Service Fees Authorization Reversal", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "reversalInformation": { - "reason": "34", - "amountDetails": { - "totalAmount": "2325.00", - "serviceFeeAmount": "30.0" - } - } - } - } - } - } - }, - "/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" - }, - "parameters": [ - { - "name": "capturePaymentRequest", - "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "transactionId": { - "type": "string", - "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 American Express Direct, FDC Nashville Global, and SIX.\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 partner ID of 999 in reports, the partner ID 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 10, - "description": "Flag that indicates that the transaction includes airline data or restaurant data.\n\nThis field must be set to `airline` in order for airline data to be sent to the processor.\n\nFor example, if this field is not set to airline or is not included in the request, CyberSource does not send airline data to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor.\n\nWhen this field is not set to restaurant or is not included in the request, CyberSource does not send restaurant data to the processor.\n\nPossible Values:\n\n- **airline**\n- **restaurant**\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor more information, see \"Forced Captures\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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\nFor processor-specific information, see the `auth_type` field 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#### 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\nand forced captures with the American\nExpress card type to comply with the CAPN\nrequirements:\n- Forced capture: Obtain the value for this\nfield from the authorization response.\n- Verbal authorization: You cannot obtain a\nvalue for this field so CyberSource uses the\ndefault value of `000000000000000` (15\nzeros).\n\nFor more information about using this default value, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" - }, - "dutyAmount": { - "type": "string", - "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" - }, - "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\nFor processor-specific information, see the national_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" - }, - "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\nFor processor-specific information, see the order_discount_management_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" - }, - "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\nFor processor-specific information, see the tax_management_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" - }, - "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\nFor processor-specific information, see the total_tax_type_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" - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" - }, - "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\nFor processor-specific information, see the additional_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" - } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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#### 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**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_firstname` 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" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" - }, - "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.\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": 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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" - }, - "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\nFor processor-specific information, see the `bill_city` 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" - }, - "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\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 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 `bill_state` 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" - }, - "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 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 `bill_zip` 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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" - }, - "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" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" - } - } - }, - "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\nand Canada.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", - "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\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" - } - } - }, - "lineItems": { - "type": "array", - "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "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" - }, - "quantity": { - "type": "number", - "minimum": 1, - "maximum": 9999999999, - "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "weight": { - "type": "string", - "maxLength": 9, - "description": "Weight of the item. See Numbered Elements." - }, - "weightIdentifier": { - "type": "string", - "maxLength": 1, - "description": "Type of weight. See Numbered Elements.\n\nPossible values:\n- B: Billed weight\n- N: Actual net weight\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\nspecifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC).\n\nSee Numbered Elements.\n" - }, - "referenceDataCode": { - "type": "string", - "maxLength": 2, - "description": "Code that identifies the value of the corresponding item_#_referenceData_#_number field. See Numbered Elements.\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" - }, - "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" - } - } - } - }, - "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\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": 48, - "description": "IP address of the customer.\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": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\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\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_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" - }, - "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\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\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" - } - } - } - } - }, - "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" - }, - "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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", - "default": false - } - } - }, - "amexCapnData": { - "type": "string", - "maxLength": 12, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { - "firstInstallmentDate": { - "type": "string", - "maximum": 6, - "description": "Date of the first installment payment. Format: YYMMDD. When you do not include this field, CyberSource sends a\nstring 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 file5:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" - }, - "invoiceData": { - "type": "string", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - }, - "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" - } - } - } - }, - "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": "CyberVacations Service Fee", - "contact": "800-999-9999", - "state": "CA" - } - } - } - } - } - } - }, - { - "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - PENDING\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - }, - "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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" - } - } - } - }, - "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": "CyberVacations Service Fee", - "contact": "800-999-9999", - "state": "CA" - } - } - } - } - } - } - }, - "/pts/v2/payments/{id}/refunds": { - "post": { - "summary": "Refund a Payment", - "description": "Include the payment ID in the POST request to refund the payment amount.\n", - "tags": [ - "refund" - ], - "operationId": "refundPayment", - "x-devcenter-metaData": { - "categoryTag": "Payments" - }, - "parameters": [ - { - "name": "refundPaymentRequest", - "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "transactionId": { - "type": "string", - "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 American Express Direct, FDC Nashville Global, and SIX.\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 partner ID of 999 in reports, the partner ID 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", - "default": false - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" - }, - "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\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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" - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" - }, - "dutyAmount": { - "type": "string", - "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" - }, - "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\nFor processor-specific information, see the national_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" - }, - "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\nFor processor-specific information, see the order_discount_management_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" - }, - "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\nFor processor-specific information, see the tax_management_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" - }, - "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\nFor processor-specific information, see the total_tax_type_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" - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" - }, - "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\nFor processor-specific information, see the additional_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" - } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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#### 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**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_firstname` 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" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" - }, - "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.\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": 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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" - }, - "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\nFor processor-specific information, see the `bill_city` 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" - }, - "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\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 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 `bill_state` 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" - }, - "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 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 `bill_zip` 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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" - }, - "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" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" - } - } - }, - "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\nand Canada.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", - "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\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" - } - } - }, - "lineItems": { - "type": "array", - "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "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" - }, - "quantity": { - "type": "number", - "minimum": 1, - "maximum": 9999999999, - "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\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": 48, - "description": "IP address of the customer.\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": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\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\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [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" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\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" - } - } - } - } - }, - "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" - }, - "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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", - "default": false - } - } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - } - }, - "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - PENDING\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - }, - "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" - }, - "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.\n\nThis value must be printed on the receipt.\n\nThis field is supported only on **American Express Direct**, **FDC Nashville Global**, and **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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" - } - } - } - } - }, - "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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" - } - } - } - } - } - } - }, - "/pts/v2/captures/{id}/refunds": { - "post": { - "summary": "Refund a Capture", - "description": "Include the capture ID in the POST request to refund the captured amount.\n", - "tags": [ - "refund" - ], - "operationId": "refundCapture", - "x-devcenter-metaData": { - "categoryTag": "Payments" - }, - "parameters": [ - { - "name": "refundCaptureRequest", - "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "transactionId": { - "type": "string", - "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 American Express Direct, FDC Nashville Global, and SIX.\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 partner ID of 999 in reports, the partner ID 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", - "default": false - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" - }, - "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\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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" - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" - }, - "dutyAmount": { - "type": "string", - "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" - }, - "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\nFor processor-specific information, see the national_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" - }, - "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\nFor processor-specific information, see the order_discount_management_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" - }, - "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\nFor processor-specific information, see the tax_management_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" - }, - "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\nFor processor-specific information, see the total_tax_type_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" - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" - }, - "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\nFor processor-specific information, see the additional_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" - } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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#### 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**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_firstname` 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" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" - }, - "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.\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": 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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" - }, - "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\nFor processor-specific information, see the `bill_city` 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" - }, - "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\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 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 `bill_state` 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" - }, - "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 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 `bill_zip` 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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" - }, - "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" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" - } - } - }, - "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\nand Canada.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", - "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\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" - } - } - }, - "lineItems": { - "type": "array", - "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "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" - }, - "quantity": { - "type": "number", - "minimum": 1, - "maximum": 9999999999, - "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\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": 48, - "description": "IP address of the customer.\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": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\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\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [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" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\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" - } - } - } - } - }, - "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" - }, - "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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", - "default": false - } - } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - } - }, - "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - PENDING\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - }, - "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" - }, - "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.\n\nThis value must be printed on the receipt.\n\nThis field is supported only on **American Express Direct**, **FDC Nashville Global**, and **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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" - } - } - } - } - }, - "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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" - } - } - } - } - } - } - }, - "/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" - }, - "parameters": [ - { - "name": "createCreditRequest", - "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "transactionId": { - "type": "string", - "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 American Express Direct, FDC Nashville Global, and SIX.\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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\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. When you\nomit this field for **Ingenico ePayments**, the processor uses the default transaction type they have on file\nfor you instead of the default value listed here.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 10, - "description": "Flag that indicates that the transaction includes airline data or restaurant data.\n\nThis field must be set to `airline` in order for airline data to be sent to the processor.\n\nFor example, if this field is not set to airline or is not included in the request, CyberSource does not send airline data to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor.\n\nWhen this field is not set to restaurant or is not included in the request, CyberSource does not send restaurant data to the processor.\n\nPossible Values:\n\n- **airline**\n- **restaurant**\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" - }, - "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\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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" - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" - }, - "dutyAmount": { - "type": "string", - "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" - }, - "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\nFor processor-specific information, see the national_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" - }, - "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\nFor processor-specific information, see the order_discount_management_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" - }, - "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\nFor processor-specific information, see the tax_management_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" - }, - "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\nFor processor-specific information, see the total_tax_type_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" - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" - }, - "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\nFor processor-specific information, see the additional_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" - } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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#### 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**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_firstname` 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" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" - }, - "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.\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": 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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" - }, - "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\nFor processor-specific information, see the `bill_city` 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" - }, - "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\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 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 `bill_state` 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" - }, - "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 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 `bill_zip` 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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" - }, - "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" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" - } - } - }, - "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\nand Canada.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", - "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\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" - } - } - }, - "lineItems": { - "type": "array", - "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "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" - }, - "quantity": { - "type": "number", - "minimum": 1, - "maximum": 9999999999, - "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\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": 48, - "description": "IP address of the customer.\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": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\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\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [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" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\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" - } - } - } - } - }, - "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" - }, - "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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", - "default": false - }, - "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**.\n\n**NOTE**: This field is required when an EMV transaction fails for a technical reason. Do not include this field when the EMV terminal does not have any applications in common with the EMV card.\n\nFor details, see the `emv_request_fallback_condition` field description in the [Card-Present Processing Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nPossible values:\n- Y: Transaction was stored and then forwarded.\n- N (default): Transaction was not stored and then forwarded.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" - }, - "cardholderVerificationMethod": { - "type": "array", - "items": { - "type": "string", - "description": "Complete list of cardholder verification methods (CVMs) supported by the terminal.\n\nPossible values:\n- PIN\n- Signature\n\n**NOTE**: You can submit one of the values or both in a request.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" - }, - "example": [ - "PIN", - "Signature" - ] - }, - "terminalInputCapability": { - "type": "array", - "items": { - "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\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n\nFor details, see the `terminal_input_capabilities_#` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", - "type": "string" - }, - "example": [ - "Keyed", - "Swiped", - "Contact", - "QRcode" - ] - }, - "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\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 details, see the `terminal_serial_number` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nThis field is supported only on American Express Direct.\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 only on American Express Direct.\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 only on American Express Direct and SIX.\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" - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - } - }, - "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - PENDING\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "creditAmountDetails": { - "type": "object", - "properties": { - "creditAmount": { - "type": "string", - "maxLength": 15, - "description": "Total amount of the credit." - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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.\n\nThis value must be printed on the receipt.\n\nThis field is supported only on **American Express Direct**, **FDC Nashville Global**, and **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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" - } - } - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - } - } - }, - "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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "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", - "value": { - "clientReferenceInformation": { - "code": "TC46125-1" - }, - "processingInformation": { - "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" - }, - "amountDetails": { - "totalAmount": "100", - "currency": "USD" - } - }, - "paymentInformation": { - "bank": { - "account": { - "number": "4100", - "type": "C", - "checkNumber": "123456" - }, - "routingNumber": "071923284" - } - } - } - }, - "example2": { - "summary": "Service Fees Credit", - "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" - } - } - } - } - } - } - }, - "/pts/v2/payments/{id}/voids": { - "post": { - "summary": "Void a Payment", - "description": "Include the payment ID in the POST request to cancel the payment.", - "tags": [ - "void" - ], - "operationId": "voidPayment", - "x-devcenter-metaData": { - "categoryTag": "Payments" - }, - "parameters": [ - { - "name": "voidPaymentRequest", - "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { - "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "test_void" - } - } - } - }, - { - "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - VOIDED\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void." - }, - "originalTransactionAmount": { - "type": "string", - "description": "Amount of the original transaction." - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/voids/4963015122056179201545", - "method": "GET" - } - }, - "id": "4963015122056179201545", - "submitTimeUtc": "2017-06-01T071832Z", - "status": "VOIDED", - "clientReferenceInformation": { - "code": "test_void" - }, - "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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" - } - } - } - } - } - }, - "/pts/v2/captures/{id}/voids": { - "post": { - "summary": "Void a Capture", - "description": "Include the capture ID in the POST request to cancel the capture.", - "tags": [ - "void" - ], - "operationId": "voidCapture", - "x-devcenter-metaData": { - "categoryTag": "Payments" - }, - "parameters": [ - { - "name": "voidCaptureRequest", - "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { - "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "test_void" - } - } - } - }, - { - "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - VOIDED\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void." - }, - "originalTransactionAmount": { - "type": "string", - "description": "Amount of the original transaction." - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/voids/4963015122056179201545", - "method": "GET" - } - }, - "id": "4963015122056179201545", - "submitTimeUtc": "2017-06-01T071832Z", - "status": "VOIDED", - "clientReferenceInformation": { - "code": "test_void" - }, - "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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" - } - } - } - } - } - }, - "/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" - }, - "parameters": [ - { - "name": "voidRefundRequest", - "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { - "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "test_void" - } - } - } - }, - { - "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - VOIDED\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void." - }, - "originalTransactionAmount": { - "type": "string", - "description": "Amount of the original transaction." - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/voids/4963015122056179201545", - "method": "GET" - } - }, - "id": "4963015122056179201545", - "submitTimeUtc": "2017-06-01T071832Z", - "status": "VOIDED", - "clientReferenceInformation": { - "code": "test_void" - }, - "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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" - } - } - } - } - } - }, - "/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" - }, - "parameters": [ - { - "name": "voidCreditRequest", - "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { - "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "test_void" - } - } - } - }, - { - "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - VOIDED\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - }, - "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void." - }, - "originalTransactionAmount": { - "type": "string", - "description": "Amount of the original transaction." - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/voids/4963015122056179201545", - "method": "GET" - } - }, - "id": "4963015122056179201545", - "submitTimeUtc": "2017-06-01T071832Z", - "status": "VOIDED", - "clientReferenceInformation": { - "code": "test_void" - }, - "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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" - } - } - } - } - } - }, - "/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" - }, - "x-queryParameterDefaults": { - "startTime": "2019-05-22T01:47:57.000Z", - "endTime": "2019-07-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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - } - } - } - }, - "/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" - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - } - } - } - }, - "/pts/v1/transaction-batch-details/{id}": { - "get": { - "tags": [ - "TransactionBatches" - ], - "summary": "Get transaction details for a given batch id\n", - "description": "Provides real-time detailed status information about the transactions \nthat you previously uploaded in the Business Center or processed with \nthe Offline Transaction File Submission service.\n", - "operationId": "getTransactionBatchDetails", - "x-devcenter-metaData": { - "categoryTag": "Transaction_Batches", - "isClientSideApi": true - }, - "produces": [ - "text/csv", - "application/xml" - ], - "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/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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - }, - "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`\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" - } - } - } - } - } - } - }, - "/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": true, - "type": "string", - "minLength": 36, - "maxLength": 36 - }, - { - "name": "createInstrumentIdentifierRequest", - "in": "body", - "description": "Please specify either a Card, Bank Account or Enrollable Card", - "required": true, - "schema": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "enrollable card", - "description": "Type of Card" - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "4622943127013705", - "minLength": 12, - "maxLength": 19, - "description": "Credit card number (PAN)." - }, - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Card expiration month.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Card expiration year.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "securityCode": { - "type": "string", - "example": "838", - "minLength": 3, - "maxLength": 4, - "description": "Card security code." - } - } - }, - "BankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "billTo": { - "type": "object", - "properties": { - "address1": { - "type": "string", - "example": "8310 Capital of Texas Highway North", - "description": "First address line registered with card." - }, - "address2": { - "type": "string", - "example": "Bluffstone Drive", - "description": "Second address line registered with card." - }, - "locality": { - "type": "string", - "example": "Austin", - "description": "Locality registered with card." - }, - "administrativeArea": { - "type": "string", - "example": "TX", - "description": "Administrative area registered with card." - }, - "postalCode": { - "type": "string", - "example": "78731", - "description": "Postal code registered with card." - }, - "country": { - "type": "string", - "example": "US", - "description": "Country registered with card." - } - } - } - } - } - } - ], - "tags": [ - "Instrument Identifier" - ], - "operationId": "createInstrumentIdentifier", - "x-devcenter-metaData": { - "categoryTag": "Token_Management" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "200": { - "description": "An existing Instrument Identifier containing the same data has already been returned.", - "headers": { - "Location": { - "description": "Link to the Instrument Identifier.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1InstrumentIdentifiersPost200Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - } - } - }, - "examples": { - "application/json": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - }, - "paymentInstruments": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" - }, - "id": "1234567890123456789", - "object": "instrumentIdentifier", - "state": "ACTIVE", - "card": { - "number": "444444XXXXXX4444" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "merchantInitiatedTransaction": { - "previousTransactionId": "123456789012345" - } - } - } - }, - "metadata": { - "creator": "user" - } - } - } - }, - "201": { - "description": "A new Instrument Identifier has been created.", - "headers": { - "Location": { - "description": "Link to the Instrument Identifier.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1InstrumentIdentifiersPost201Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - } - } - }, - "examples": { - "application/json": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - }, - "paymentInstruments": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" - } - }, - "id": "1234567890123456789", - "object": "instrumentIdentifier", - "state": "ACTIVE", - "card": { - "number": "444444XXXXXX4444" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "merchantInitiatedTransaction": { - "previousTransactionId": "123456789012345" - } - } - } - }, - "metadata": { - "creator": "user" - } - } - } - }, - "400": { - "description": "Bad Request. A required header value could be missing.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1BadRequest400Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "Missing Headers": { - "errors": [ - { - "type": "missingHeaders", - "message": "Missing header values." - } - ] - } - } - }, - "403": { - "description": "Forbidden. The profile might not have permission to perform the token operation.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1Forbidden403Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "forbidden", - "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": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1FailedDependency424Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "title": "tmsV1Error500Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Create Instrument Identifier (Card)", - "value": { - "card": { - "number": "411111111111112" - } - } - }, - "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": "4622943127013705", - "expirationMonth": "12", - "expirationYear": "2022", - "securityCode": "838" - }, - "billTo": { - "address1": "8310 Capital of Texas Highway North", - "address2": "Bluffstone Drive", - "locality": "Austin", - "administrativeArea": "TX", - "postalCode": "78731", - "country": "US" - } - } - } - } - } - }, - "/tms/v1/instrumentidentifiers/{tokenId}": { - "get": { - "summary": "Retrieve an Instrument Identifier", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": true, - "type": "string", - "minLength": 36, - "maxLength": 36 - }, - { - "name": "tokenId", - "in": "path", - "description": "The TokenId of an Instrument Identifier.", - "required": true, - "type": "string", - "minLength": 16, - "maxLength": 32 - } - ], - "tags": [ - "Instrument Identifier" - ], - "operationId": "getInstrumentIdentifier", - "x-devcenter-metaData": { - "categoryTag": "Token_Management" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "200": { - "description": "An existing Instrument Identifier associated with the supplied `tokenId` has been returned.", - "headers": { - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1InstrumentIdentifiersGet200Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - } - } - }, - "examples": { - "application/json": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - }, - "paymentInstruments": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" - } - }, - "id": "1234567890123456789", - "object": "instrumentIdentifier", - "state": "ACTIVE", - "card": { - "number": "444444XXXXXX4444" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "merchantInitiatedTransaction": { - "previousTransactionId": "123456789012345" - } - } - } - }, - "metadata": { - "creator": "user" - } - } - } - }, - "400": { - "description": "Bad Request. A required header value could be missing.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1BadRequest400Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "Missing Headers": { - "errors": [ - { - "type": "missingHeaders", - "message": "Missing header values." - } - ] - } - } - }, - "403": { - "description": "Forbidden. The profile might not have permission to perform the token operation.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1Forbidden403Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "forbidden", - "message": "Request not permitted." - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotFound404Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotAvailable410Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw 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": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1FailedDependency424Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "title": "tmsV1Error500Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - } - } - } - }, - "patch": { - "summary": "Update a Instrument Identifier", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": true, - "type": "string", - "minLength": 36, - "maxLength": 36 - }, - { - "name": "tokenId", - "in": "path", - "description": "The TokenId of an Instrument Identifier.", - "required": true, - "type": "string", - "minLength": 16, - "maxLength": 32 - }, - { - "name": "updateInstrumentIdentifierRequest", - "in": "body", - "description": "Specify the previous transaction ID to update.", - "required": true, - "schema": { - "type": "object", - "properties": { - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - } - } - } - } - ], - "tags": [ - "Instrument Identifier" - ], - "operationId": "updateInstrumentIdentifier", - "x-devcenter-metaData": { - "categoryTag": "Token_Management" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "200": { - "description": "The updated Instrument Identifier has been returned.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1InstrumentIdentifiersPatch200Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - } - } - }, - "examples": { - "application/json": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/58FEBAEFD2EEFCE1E0539399D30A7500" - } - }, - "id": "58FEBAEFD2EEFCE1E0539399D30A7500", - "object": "instrumentIdentifier", - "state": "ACTIVE", - "card": { - "number": "424242XXXXXX4242" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "merchantInitiatedTransaction": { - "previousTransactionId": 123456789012345 - } - } - } - }, - "metadata": { - "creator": "user" - } - } - } - }, - "400": { - "description": "Bad Request. A required header value could be missing.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1InstrumentIdentifiersPatch400Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "Missing Headers": { - "errors": [ - { - "type": "missingHeaders", - "message": "Missing header values." - } - ] - }, - "Invalid Parameters": { - "errors": [ - { - "type": "invalidParameters", - "message": "Invalid parameter values.", - "details": [ - { - "name": "id" - } - ] - } - ] - }, - "Unknown Field": { - "errors": [ - { - "type": "unknownField", - "message": "Unknown body values.", - "details": [ - { - "name": "id" - } - ] - } - ] - }, - "Unsupported Fields": { - "errors": [ - { - "type": "unsupportedFields", - "message": "Unsupported body values for this action.", - "details": [ - { - "name": "bankAccount" - }, - { - "name": "card" - } - ] - } - ] - } - } - }, - "403": { - "description": "Forbidden. The profile might not have permission to perform the token operation.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1Forbidden403Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "forbidden", - "message": "Request not permitted." - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotFound404Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotAvailable410Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw 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": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1FailedDependency424Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "title": "tmsV1Error500Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - } - } - } - }, - "delete": { - "summary": "Delete an Instrument Identifier", - "tags": [ - "Instrument Identifier" - ], - "operationId": "deleteInstrumentIdentifier", - "x-devcenter-metaData": { - "categoryTag": "Token_Management" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": true, - "type": "string", - "minLength": 36, - "maxLength": 36 - }, - { - "name": "tokenId", - "in": "path", - "description": "The TokenId of an Instrument Identifier.", - "required": true, - "type": "string", - "minLength": 16, - "maxLength": 32 - } - ], - "responses": { - "204": { - "description": "An existing Instrument Identifier associated with the supplied `tokenId` has been deleted.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "403": { - "description": "Forbidden. The profile might not have permission to perform the token operation.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1Forbidden403Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "forbidden", - "message": "Request not permitted." - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotFound404Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "409": { - "description": "Conflict. The token is linked to a Payment Instrument.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1InstrumentIdentifiersDelete409Response", - "type": "array", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "paymentInstruments": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" - } - } - } - } - } - }, - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "_links": { - "paymentInstruments": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/7010000000001621111/paymentinstruments" - } - }, - "errors": [ - { - "type": "instrumentIdentifierDeletionError", - "message": "Action cannot be performed. The Instrument Identifier is associated with one or more Payment Instruments." - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotAvailable410Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw 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": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1FailedDependency424Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "title": "tmsV1Error500Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - } - } - } - } - }, - "/tms/v1/instrumentidentifiers/{tokenId}/paymentinstruments": { - "get": { - "summary": "Retrieve all Payment Instruments", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": true, - "type": "string", - "minLength": 36, - "maxLength": 36 - }, - { - "name": "tokenId", - "in": "path", - "description": "The TokenId of an Instrument Identifier.", - "required": true, - "type": "string", - "minLength": 16, - "maxLength": 32 - }, - { - "name": "offset", - "in": "query", - "description": "Starting Payment Instrument 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 of Payment Instruments 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": "getAllPaymentInstruments", - "x-devcenter-metaData": { - "categoryTag": "Token_Management" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "200": { - "description": "Returns an array of Payment Instruments associated with the supplied Instrument Identifier.", - "headers": { - "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 Instrument Identifier in the zero-based dataset.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "A link to the current requested collection.", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=20&limit=5\"" - } - } - }, - "first": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "A link to the collection starting at offset zero for the supplied limit.", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=0&limit=5" - } - } - }, - "prev": { - "type": "object", - "description": "A link to the previous collection starting at the supplied offset minus the supplied limit.", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=15&limit=5" - } - } - }, - "next": { - "type": "object", - "properties": { - "href": { - "description": "A link to the next collection starting at the supplied offset plus the supplied limit.", - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=25&limit=5" - } - } - }, - "last": { - "type": "object", - "properties": { - "href": { - "description": "A link to the last collection containing the remaining objects.", - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=35&limit=5" - } - } - } - } - }, - "object": { - "type": "string", - "readOnly": true, - "example": "collection", - "description": "'Shows the response is a collection of objects.'\n\nValid values:\n- collection\n" - }, - "offset": { - "type": "string", - "readOnly": true, - "example": "20", - "description": "The offset parameter supplied in the request." - }, - "limit": { - "type": "string", - "readOnly": true, - "example": "1", - "description": "The limit parameter supplied in the request." - }, - "count": { - "type": "string", - "readOnly": true, - "example": "1", - "description": "The number of Payment Instruments returned in the array." - }, - "total": { - "type": "string", - "readOnly": true, - "example": "39", - "description": "The total number of Payment Instruments associated with the Instrument Identifier in the zero-based dataset." - }, - "_embedded": { - "type": "object", - "properties": { - "paymentInstruments": { - "description": "Array of Payment Instruments returned for the supplied Instrument Identifier.", - "type": "array", - "items": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } - } - }, - "card": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" - }, - "type": { - "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" - }, - "issueNumber": { - "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." - }, - "startMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "startYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" - }, - "currency": { - "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." - }, - "dateOBirth": { - "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { - "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "lastName": { - "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "company": { - "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address1": { - "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." - }, - "locality": { - "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "administrativeArea": { - "type": "string", - "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "postalCode": { - "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "country": { - "type": "string", - "example": "US", - "minLength": 2, - "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "phoneNumber": { - "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." - } - } - } - } - }, - "metaData": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "id": { - "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - } - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=20&limit=1" - }, - "first": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=0&limit=1" - }, - "prev": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=19&limit=1" - }, - "next": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=21&limit=1\"" - }, - "last": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=38&limit=1" - } - }, - "object": "collection", - "offset": 20, - "limit": 1, - "count": 1, - "total": 39, - "_embedded": { - "paymentInstruments": [ - { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/paymentinstruments/6036673B73B12F19E0539399D30A2566" - } - }, - "id": "6036673B73B12F19E0539399D30A2566", - "object": "paymentInstrument", - "state": "ACTIVE", - "card": { - "expirationMonth": "09", - "expirationYear": "2027", - "type": "visa", - "issueNumber": "01", - "startMonth": "01", - "startYear": "2017" - }, - "buyerInformation": { - "companyTaxId": "12345", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Smith", - "company": "CyberSource", - "address1": "1 My Apartment", - "address2": "Main Street", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "90211", - "country": "US", - "email": "john.smith@test.com", - "phoneNumber": "+44 2890447777" - }, - "processingInformation": { - "billPaymentProgramEnabled": true - }, - "metadata": { - "creator": "user" - }, - "_embedded": { - "instrumentIdentifier": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1" - } - }, - "id": "5B32CE6167B09343E05333B9D30A53E1", - "object": "instrumentIdentifier", - "state": "ACTIVE", - "card": { - "number": "424242XXXXXX1237" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "merchantInitiatedTransaction": { - "previousTransactionId": "123456789012345" - } - } - } - }, - "metadata": { - "creator": "user" - } - } - } - } - ] - } - } - } - }, - "400": { - "description": "Bad Request. A required header value could be missing.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1BadRequest400Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "Missing Headers": { - "errors": [ - { - "type": "missingHeaders", - "message": "Missing header values." - } - ] - } - } - }, - "403": { - "description": "Forbidden. The profile might not have permission to perform the token operation.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1Forbidden403Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "forbidden", - "message": "Request not permitted." - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotFound404Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotAvailable410Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw 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": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1FailedDependency424Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "title": "tmsV1Error500Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - } - } - } - } - }, - "/tms/v1/paymentinstruments": { - "post": { - "summary": "Create a Payment Instrument", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": true, - "type": "string", - "minLength": 36, - "maxLength": 36 - }, - { - "name": "createPaymentInstrumentRequest", - "in": "body", - "description": "Specify the customer's payment details for card or bank account.", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } - } - }, - "card": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" - }, - "type": { - "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" - }, - "issueNumber": { - "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." - }, - "startMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "startYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" - }, - "currency": { - "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." - }, - "dateOBirth": { - "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { - "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "lastName": { - "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "company": { - "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address1": { - "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." - }, - "locality": { - "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "administrativeArea": { - "type": "string", - "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "postalCode": { - "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "country": { - "type": "string", - "example": "US", - "minLength": 2, - "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "phoneNumber": { - "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." - } - } - } - } - }, - "metaData": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "id": { - "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - } - } - } - } - } - } - ], - "tags": [ - "Payment Instrument" - ], - "operationId": "createPaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "201": { - "description": "A new Payment Instrument has been created.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1PaymentInstrumentsPost201Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } - } - }, - "card": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" - }, - "type": { - "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" - }, - "issueNumber": { - "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." - }, - "startMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "startYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" - }, - "currency": { - "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." - }, - "dateOBirth": { - "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { - "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "lastName": { - "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "company": { - "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address1": { - "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." - }, - "locality": { - "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "administrativeArea": { - "type": "string", - "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "postalCode": { - "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "country": { - "type": "string", - "example": "US", - "minLength": 2, - "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "phoneNumber": { - "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." - } - } - } - } - }, - "metaData": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "id": { - "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/paymentinstruments/5910683634E6B035E0539399D30A4B46" - } - }, - "id": "5910683634E6B035E0539399D30A4B46", - "object": "paymentInstrument", - "state": "ACTIVE", - "card": { - "expirationMonth": 11, - "expirationYear": 2020, - "type": "visa", - "issueNumber": 1, - "startMonth": 12, - "startYear": 2017 - }, - "buyerInformation": { - "companyTaxID": 12345, - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Smith", - "company": "Cybersource", - "address1": "1 My Apartment", - "address2": "20 My Street", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": 90210, - "country": "US", - "email": "ohn.smith@test.com", - "phoneNumber": "+44 289044795" - }, - "processingInformation": { - "billPaymentProgramEnabled": true - }, - "metadata": { - "creator": "user" - }, - "_embedded": { - "instrumentIdentifier": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/58FEBAEFD2EEFCE1E0539399D30A7500" - } - }, - "id": "58FEBAEFD2EEFCE1E0539399D30A7500", - "object": "instrumentIdentifier", - "state": "ACTIVE", - "card": { - "number": "424242XXXXXX4242" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "merchantInitiatedTransaction": { - "previousTransactionId": 123456789012345 - } - } - } - }, - "metadata": { - "creator": "user" - } - } - } - } - } - }, - "400": { - "description": "Bad Request. A required header value could be missing.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1PaymentInstruments400Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "Missing Headers": { - "errors": [ - { - "type": "missingHeaders", - "message": "Missing header values." - } - ] - }, - "Payment Instrument cannot be linked to instrument identifier because it does not exist": { - "errors": [ - { - "type": "instrumentIdentifierNotFound", - "message": "Action cannot be performed. The `InstrumentIdentifier` is not found" - } - ] - }, - "Payment Instrument cannot be linked to instrument identifier because it has been deleted": { - "errors": [ - { - "type": "instrumentIdentifierGone", - "message": "Action cannot be performed. The `InstrumentIdentifier` is gone." - } - ] - }, - "Payment Instrument cannot be linked to instrument identifier due to a token type mismatch": { - "errors": [ - { - "type": "invalidCombination", - "message": "The combination is invalid.", - "details": [ - { - "name": "bankAccount" - }, - { - "name": "card", - "location": "instrumentIdentifier" - } - ] - } - ] - }, - "Payment Instrument cannot be created due to invalid combination of Instrument Identifier fields": { - "errors": [ - { - "type": "invalidCombination", - "message": "The combination is invalid.", - "details": [ - { - "name": "id", - "location": "instrumentIdentifier" - }, - { - "name": "card", - "location": "instrumentIdentifier" - } - ] - } - ] - } - } - }, - "403": { - "description": "Forbidden. The profile might not have permission to perform the token operation.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1Forbidden403Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "forbidden", - "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": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1FailedDependency424Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "title": "tmsV1Error500Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Create Payment Instrument (Card)", - "value": { - "card": { - "expirationMonth": "09", - "expirationYear": "2017", - "type": "visa", - "issueNumber": "01", - "startMonth": "01", - "startYear": "2016" - }, - "buyerInformation": { - "companyTaxID": "12345", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Smith", - "company": "Cybersource", - "address1": "8310 Capital of Texas Highwas North", - "address2": "Bluffstone Drive", - "locality": "Austin", - "administrativeArea": "TX", - "postalCode": "78731", - "country": "US", - "email": "john.smith@test.com", - "phoneNumber": "+44 2890447951" - }, - "processingInformation": { - "billPaymentProgramEnabled": true - }, - "instrumentIdentifier": { - "card": { - "number": "411111111111112" - } - } - } - }, - "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": "Smith", - "company": "Cybersource", - "address1": "8310 Capital of Texas Highwas North", - "address2": "Bluffstone Drive", - "locality": "Austin", - "administrativeArea": "TX", - "postalCode": "78731", - "country": "US", - "email": "john.smith@test.com", - "phoneNumber": "+44 2890447951" - }, - "processingInformation": { - "billPaymentProgramEnabled": true, - "bankTransferOptions": { - "SECCode": "WEB" - } - }, - "merchantInformation": { - "merchantDescriptor": { - "alternateName": "Branch Name" - } - }, - "instrumentIdentifier": { - "bankAccount": { - "number": "4100", - "routingNumber": "071923284" - } - } - } - }, - "example2": { - "summary": "Create Payment Instrument (Pinless Debit)", - "value": { - "card": { - "expirationMonth": "09", - "expirationYear": "2017", - "type": "visa", - "issueNumber": "01", - "startMonth": "01", - "startYear": "2016", - "useAs": "pinless debit" - }, - "buyerInformation": { - "companyTaxID": "12345", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Smith", - "company": "Cybersource", - "address1": "8310 Capital of Texas Highwas North", - "address2": "Bluffstone Drive", - "locality": "Austin", - "administrativeArea": "TX", - "postalCode": "78731", - "country": "US", - "email": "john.smith@test.com", - "phoneNumber": "+44 2890447951" - }, - "processingInformation": { - "billPaymentProgramEnabled": true - }, - "instrumentIdentifier": { - "card": { - "number": "411111111111112" - } - } - } - }, - "example3": { - "summary": "Create Payment Instrument (Card with Instrument Identifier Id)", - "value": { - "card": { - "expirationMonth": "09", - "expirationYear": "2017", - "type": "visa", - "issueNumber": "01", - "startMonth": "01", - "startYear": "2016" - }, - "buyerInformation": { - "companyTaxID": "12345", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Smith", - "company": "Cybersource", - "address1": "8310 Capital of Texas Highwas North", - "address2": "Bluffstone Drive", - "locality": "Austin", - "administrativeArea": "TX", - "postalCode": "78731", - "country": "US", - "email": "john.smith@test.com", - "phoneNumber": "+44 2890447951" - }, - "processingInformation": { - "billPaymentProgramEnabled": true - }, - "instrumentIdentifier": { - "id": "9000000000000000001003" - } - } - }, - "example4": { - "summary": "Create Payment Instrument (Tokenized Card)", - "value": { - "card": { - "expirationMonth": "09", - "expirationYear": "2017", - "type": "visa", - "issueNumber": "01", - "startMonth": "01", - "startYear": "2016", - "tokenizedInformation": { - "requestorID": "payment_network_token_requestor_id", - "transactionType": "payment_network_token_transaction_type" - } - }, - "buyerInformation": { - "companyTaxID": "12345", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Smith", - "company": "Cybersource", - "address1": "8310 Capital of Texas Highwas North", - "address2": "Bluffstone Drive", - "locality": "Austin", - "administrativeArea": "TX", - "postalCode": "78731", - "country": "US", - "email": "john.smith@test.com", - "phoneNumber": "+44 2890447951" - }, - "processingInformation": { - "billPaymentProgramEnabled": true - }, - "instrumentIdentifier": { - "card": { - "number": "411111111111112" - } - } - } - }, - "example5": { - "summary": "Create Payment Instrument (Card & Enroll for Network Token)", - "value": { - "card": { - "expirationMonth": "09", - "expirationYear": "2017", - "type": "visa", - "issueNumber": "01", - "startMonth": "01", - "startYear": "2016" - }, - "buyerInformation": { - "companyTaxID": "12345", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Smith", - "company": "Cybersource", - "address1": "8310 Capital of Texas Highwas North", - "address2": "Bluffstone Drive", - "locality": "Austin", - "administrativeArea": "TX", - "postalCode": "78731", - "country": "US", - "email": "john.smith@test.com", - "phoneNumber": "+44 2890447951" - }, - "processingInformation": { - "billPaymentProgramEnabled": true - }, - "instrumentIdentifier": { - "type": "enrollable card", - "card": { - "number": "4622943127013705", - "expirationMonth": "12", - "expirationYear": "2022", - "securityCode": "838" - }, - "billTo": { - "address1": "8310 Capital of Texas Highway North", - "address2": "Bluffstone Drive", - "locality": "Austin", - "administrativeArea": "TX", - "postalCode": "78731", - "country": "US" - } - } - } - } - } - } - }, - "/tms/v1/paymentinstruments/{tokenId}": { - "patch": { - "summary": "Update a Payment Instrument", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": true, - "type": "string", - "minLength": 36, - "maxLength": 36 - }, - { - "name": "tokenId", - "in": "path", - "description": "The TokenId of a Payment Instrument.", - "required": true, - "type": "string", - "minLength": 16, - "maxLength": 32 - }, - { - "name": "updatePaymentInstrumentRequest", - "in": "body", - "description": "Specify the customer's payment details.", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } - } - }, - "card": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" - }, - "type": { - "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" - }, - "issueNumber": { - "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." - }, - "startMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "startYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" - }, - "currency": { - "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." - }, - "dateOBirth": { - "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { - "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "lastName": { - "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "company": { - "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address1": { - "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." - }, - "locality": { - "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "administrativeArea": { - "type": "string", - "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "postalCode": { - "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "country": { - "type": "string", - "example": "US", - "minLength": 2, - "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "phoneNumber": { - "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." - } - } - } - } - }, - "metaData": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "id": { - "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - } - } - } - } - } - } - ], - "tags": [ - "Payment Instrument" - ], - "operationId": "updatePaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "200": { - "description": "The updated Payment Instrument has been returned.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1PaymentinstrumentsPatch200Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } - } - }, - "card": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" - }, - "type": { - "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" - }, - "issueNumber": { - "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." - }, - "startMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "startYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" - }, - "currency": { - "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." - }, - "dateOBirth": { - "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { - "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "lastName": { - "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "company": { - "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address1": { - "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." - }, - "locality": { - "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "administrativeArea": { - "type": "string", - "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "postalCode": { - "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "country": { - "type": "string", - "example": "US", - "minLength": 2, - "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "phoneNumber": { - "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." - } - } - } - } - }, - "metaData": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "id": { - "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/paymentinstruments/5910683634E6B035E0539399D30A4B46" - } - }, - "id": "5910683634E6B035E0539399D30A4B46", - "object": "paymentInstrument", - "state": "ACTIVE", - "card": { - "expirationMonth": 11, - "expirationYear": 2020, - "type": "visa", - "issueNumber": 1, - "startMonth": 12, - "startYear": 2017 - }, - "buyerInformation": { - "companyTaxID": 12345, - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Smith", - "company": "Cybersource", - "address1": "1 My Apartment", - "address2": "20 My Street", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": 90210, - "country": "US", - "email": "ohn.smith@test.com", - "phoneNumber": "+44 289044795" - }, - "processingInformation": { - "billPaymentProgramEnabled": true - }, - "metadata": { - "creator": "user" - }, - "_embedded": { - "instrumentIdentifier": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/58FEBAEFD2EEFCE1E0539399D30A7500" - } - }, - "id": "58FEBAEFD2EEFCE1E0539399D30A7500", - "object": "instrumentIdentifier", - "state": "ACTIVE", - "card": { - "number": "424242XXXXXX4242" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "merchantInitiatedTransaction": { - "previousTransactionId": 123456789012345 - } - } - } - }, - "metadata": { - "creator": "user" - } - } - } - } - } - }, - "400": { - "description": "Bad Request. A required header value could be missing.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1PaymentInstruments400Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "Missing Headers": { - "errors": [ - { - "type": "missingHeaders", - "message": "Missing header values." - } - ] - }, - "Payment Instrument cannot be linked to instrument identifier because it does not exist": { - "errors": [ - { - "type": "instrumentIdentifierNotFound", - "message": "Action cannot be performed. The `InstrumentIdentifier` is not found" - } - ] - }, - "Payment Instrument cannot be linked to instrument identifier because it has been deleted": { - "errors": [ - { - "type": "instrumentIdentifierGone", - "message": "Action cannot be performed. The `InstrumentIdentifier` is gone." - } - ] - }, - "Payment Instrument cannot be linked to instrument identifier due to a token type mismatch": { - "errors": [ - { - "type": "invalidCombination", - "message": "The combination is invalid.", - "details": [ - { - "name": "bankAccount" - }, - { - "name": "card", - "location": "instrumentIdentifier" - } - ] - } - ] - }, - "Payment Instrument cannot be created due to invalid combination of Instrument Identifier fields": { - "errors": [ - { - "type": "invalidCombination", - "message": "The combination is invalid.", - "details": [ - { - "name": "id", - "location": "instrumentIdentifier" - }, - { - "name": "card", - "location": "instrumentIdentifier" - } - ] - } - ] - } - } - }, - "403": { - "description": "Forbidden. The profile might not have permission to perform the token operation.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1Forbidden403Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "forbidden", - "message": "Request not permitted." - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotFound404Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotAvailable410Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw 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": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1FailedDependency424Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "title": "tmsV1Error500Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - } - } - } - }, - "get": { - "summary": "Retrieve a Payment Instrument", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": true, - "type": "string", - "minLength": 36, - "maxLength": 36 - }, - { - "name": "tokenId", - "in": "path", - "description": "The TokenId of a Payment Instrument.", - "required": true, - "type": "string", - "minLength": 16, - "maxLength": 32 - } - ], - "tags": [ - "Payment Instrument" - ], - "operationId": "getPaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "200": { - "description": "An existing Payment Instrument associated with the supplied `tokenId` has been returned.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1PaymentinstrumentsPatch200Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } - } - }, - "card": { + "processorInformation": { "type": "object", - "required": [ - "type" - ], "properties": { - "expirationMonth": { + "authIndicator": { "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "maxLength": 1, + "description": "Flag that specifies the purpose of the authorization.\n\nPossible values:\n - **0**: Preauthorization\n - **1**: Final authorization\n\nFor processor-specific information, see the auth_indicator field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "expirationYear": { + "approvalCode": { "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + "description": "Authorization code. Returned only when the processor returns this value.\n" }, - "type": { + "transactionId": { "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + "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\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "issueNumber": { + "networkTransactionId": { "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + "description": "The description for this field is not available." }, - "startMonth": { + "providerTransactionId": { "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + "description": "The description for this field is not available." }, - "startYear": { + "responseCode": { "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + "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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\n" }, - "useAs": { + "responseCodeSource": { "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { + "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", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + "maxLength": 255, + "description": "This field might contain information about a decline. This field is supported only for **CyberSource through\nVisaNet**.\n" }, - "currency": { + "responseCategoryCode": { "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + "maxLength": 32, + "description": "Processor-defined response category code. The associated detail error code is in the `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: 32\n - All other processors: 3\n" }, - "dateOBirth": { + "forwardedAcquirerCode": { "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + "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" }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { - "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - } - } - } + "avs": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 1, + "description": "AVS result code.\n" + }, + "codeRaw": { + "type": "string", + "maxLength": 10, + "description": "AVS result code sent directly from the processor. Returned only when the processor returns this value.\nImportant Do not use this field to evaluate the result of AVS. Use for debugging purposes only.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 2, + "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" + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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" } } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { + }, + "consumerAuthenticationResponse": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 3, + "description": "Mapped response code for Visa Secure and American Express SafeKey.\n\nFor processor-specific details, see `auth_cavv_response_code` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "codeRaw": { + "type": "string", + "maxLength": 3, + "description": "Raw response code sent directly from the processor for Visa Secure and American Express SafeKey:\n\nFor processor-specific details, see `auth_cavv_response_code_raw` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "systemTraceAuditNumber": { "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "maxLength": 6, + "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\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\nFor details, see `receipt_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "lastName": { + "paymentAccountReferenceNumber": { "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "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.\n" }, - "company": { + "transactionIntegrityCode": { "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "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" }, - "address1": { + "amexVerbalAuthReferenceNumber": { "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "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" }, - "address2": { + "salesSlipNumber": { + "type": "integer", + "maximum": 99999, + "description": "Transaction identifier that CyberSource generates. You have the option of printing the sales slip number on\nthe receipt.\n\nThis field is supported only for **JCN Gateway**.\n" + }, + "masterCardServiceCode": { "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." + "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" }, - "locality": { + "masterCardServiceReplyCode": { "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "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" }, - "administrativeArea": { + "masterCardAuthenticationType": { "type": "string", - "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "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" }, - "postalCode": { + "name": { "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "maxLength": 30, + "description": "Name of the Processor.\n" + }, + "routing": { + "type": "object", + "properties": { + "network": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the transaction was routed on a credit network, a debit network, or the STAR signature debit\nnetwork.\n\nPossible values:\n- `C`: Credit network\n- `D`: Debit network (without signature)\n- `S`: STAR signature debit network\n\nThis field is supported only on FDC Nashville Global.\n\nFor details, see the `routing_network_type` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "networkName": { + "type": "string", + "maxLength": 10, + "description": "Name of the network on which the transaction was routed.\n\nThis field is supported only on FDC Nashville Global.\n\nFor details, see the `routing_network_label` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nThis field is supported only on FDC Nashville Global.\n\nFor details, see the `routing_signature_cvm_required` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } }, + "merchantNumber": { + "type": "string", + "maxLength": 15, + "description": "Identifier that was assigned to you by your acquirer.\n\nThis value must be printed on the receipt.\n\nThis field is supported only on **American Express Direct**, **FDC Nashville Global**, and **SIX**.\n" + } + } + }, + "issuerInformation": { + "type": "object", + "properties": { "country": { "type": "string", - "example": "US", - "minLength": 2, "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "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.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "email": { + "discretionaryData": { "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "phoneNumber": { + "responseCode": { "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + "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 field is supported only on FDC Nashville Global and SIX.\n" } } }, - "processingInformation": { + "paymentInformation": { "type": "object", "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" + "card": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the cardholder\u2019s account number. This field is returned only for tokenized transactions.\nYou can use this value on the receipt that you give to the cardholder.\n\n**Note** This field is returned only for CyberSource through VisaNet and FDC Nashville Global.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 85\n- Field: American Express last 4 PAN return indicator.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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" + }, + "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" + } + } + }, + "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" + }, + "accountStatus": { + "type": "string", + "maxLength": 1, + "description": "Possible values:\n\n - `N`: Nonregulated\n - `R`: Regulated\n\n**Note** This field is returned only for CyberSource through VisaNet.\n" + }, + "balanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\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\nFor details, see `auth_account_balance_currency` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "balanceSign": { + "type": "string", + "maxLength": 1, + "description": "Sign for the remaining balance on the account. Returned only when the processor returns this value. Possible values:\n\nPossible values:\n - **+**\n - **-**\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**Processor specific maximum length**:\n\n - Chase Paymentech Solutions: 1\n - Litle: 13\n" + }, + "category": { + "type": "string", + "maxLength": 7, + "description": "#### 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, seepag the Product ID table on the\n[Visa Request & Response Codes web page.](https://developer.visa.com/guides/request_response_codes) For descriptions of the\nMastercard product IDs, see \"Product IDs\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_commercial` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details, see `auth_card_healthcare` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_payroll` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_level_3_eligible` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_pinless_debit` reply field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_signature_debit` reply field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `auth_card_prepaid` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `auth_card_regulated` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } }, - "bankTransferOptions": { + "bank": { "type": "object", "properties": { - "SECCode": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "correctedRoutingNumber": { "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } } } }, - "merchantInformation": { + "orderInformation": { "type": "object", "properties": { - "merchantDescriptor": { + "amountDetails": { "type": "object", "properties": { - "alternateName": { + "totalAmount": { "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + "maxLength": 15, + "description": "Amount you requested for the payment or capture.\n\nThis value is returned for partial authorizations.\n" + }, + "authorizedAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount that was authorized.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + }, + "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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\n" } } } } }, - "metaData": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - }, - "instrumentIdentifier": { + "pointOfSaleInformation": { "type": "object", "properties": { - "_links": { + "emv": { "type": "object", - "readOnly": true, "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } + "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } + "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" }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } + "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" } } }, - "object": { + "amexCapnData": { "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + "maxLength": 12, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "installmentInformation": { + "type": "object", + "properties": { + "additionalCosts": { + "type": "string", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "state": { + "additionalCostsPercentage": { "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "id": { + "amountFunded": { "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } + "amountRequestedPercentage": { + "type": "string", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } + "annualFinancingCost": { + "type": "string", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - } - } + "annualInterestRate": { + "type": "string", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } + "monthlyInterestRate": { + "type": "string", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" } } } - } - }, - "examples": { - "application/json": { + }, + "example": { "_links": { "self": { - "href": "https://api.cybersource.com/tms/v1/paymentinstruments/5910683634E6B035E0539399D30A4B46" + "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": "5910683634E6B035E0539399D30A4B46", - "object": "paymentInstrument", - "state": "ACTIVE", - "card": { - "expirationMonth": 11, - "expirationYear": 2020, - "type": "visa", - "issueNumber": 1, - "startMonth": 12, - "startYear": 2017 - }, - "buyerInformation": { - "companyTaxID": 12345, - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Smith", - "company": "Cybersource", - "address1": "1 My Apartment", - "address2": "20 My Street", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": 90210, - "country": "US", - "email": "ohn.smith@test.com", - "phoneNumber": "+44 289044795" - }, - "processingInformation": { - "billPaymentProgramEnabled": true + "id": "4963015972176007901546", + "submitTimeUtc": "2017-06-01T071957Z", + "status": "200", + "reconciliationId": "39570726X3E1LBQR", + "statusInformation": { + "reason": "SUCCESS", + "message": "Successful transaction." }, - "metadata": { - "creator": "user" + "clientReferenceInformation": { + "code": "TC50171_3" }, - "_embedded": { - "instrumentIdentifier": { - "_links": { - "self": { - "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/58FEBAEFD2EEFCE1E0539399D30A7500" - } - }, - "id": "58FEBAEFD2EEFCE1E0539399D30A7500", - "object": "instrumentIdentifier", - "state": "ACTIVE", - "card": { - "number": "424242XXXXXX4242" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "merchantInitiatedTransaction": { - "previousTransactionId": 123456789012345 - } - } - } - }, - "metadata": { - "creator": "user" - } - } - } - } - } - }, - "400": { - "description": "Bad Request. A required header value could be missing.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1BadRequest400Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "examples": { - "Missing Headers": { - "errors": [ - { - "type": "missingHeaders", - "message": "Missing header values." + "orderInformation": { + "amountDetails": { + "authorizedAmount": "102.21", + "currency": "USD" } - ] - } - } - }, - "403": { - "description": "Forbidden. The profile might not have permission to perform the token operation.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1Forbidden403Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" + }, + "processorInformation": { + "approvalCode": "888888", + "cardVerification": { + "resultCode": "" }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." + "avs": { + "code": "X", + "codeRaw": "I1" }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } + "responseCode": "100" } } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "forbidden", - "message": "Request not permitted." - } - ] - } } }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, + "400": { + "description": "Invalid request.", "schema": { - "title": "tmsV1TokenNotFound404Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { + "type": "object", + "title": "ptsV2PaymentsPost400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - 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 - DEBIT_CARD_USEAGE_EXCEEDD_LIMIT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { "type": "object", "properties": { - "name": { + "field": { "type": "string", - "description": "The name of the field that threw the error." + "description": "This is the flattened JSON object field name/path that is either missing or invalid." }, - "location": { + "reason": { "type": "string", - "description": "The location of the field that threw the error." + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" } } } } } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } } }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, + "502": { + "description": "Unexpected system error or system timeout.", "schema": { - "title": "tmsV1TokenNotAvailable410Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } + "title": "ptsV2PaymentsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - 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 - INVALID_OR_MISSING_CONFIG\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." } } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] + } + } + }, + "x-example": { + "example0": { + "summary": "Simple Authorization(Internet)", + "sample-name": "Process Payment", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "commerceIndicator": "internet" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "securityCode": "123", + "expirationMonth": "12" + } } } }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" + "example1": { + "summary": "Simple Authorization(Retail)", + "sample-name": "Process Payment Simple Authorization Retail", + "value": { + "clientReferenceInformation": { + "code": "TC50171_8" + }, + "pointOfSaleInformation": { + "terminalId": "001", + "cardPresent": "Y", + "entryMode": "keyed", + "terminalCapability": "2" + }, + "processingInformation": { + "commerceIndicator": "retail" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "108.00", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "5555555555554444", + "securityCode": "123", + "expirationMonth": "12", + "type": "002" + } } - }, - "schema": { - "title": "tmsV1FailedDependency424Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } + } + }, + "example2": { + "summary": "Payment with Payment Instrument Token", + "sample-name": "Process Payment with Payment Instrument Token", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "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" + }, + "amountDetails": { + "totalAmount": "22", + "currency": "USD" + } + }, + "paymentInformation": { + "customer": { + "customerId": "7500BB199B4270EFE05340588D0AFCAD" + } + } + } + }, + "example3": { + "summary": "Payment Network Tokenization", + "sample-name": "Process Payment with Network Tokenization", + "value": { + "clientReferenceInformation": { + "code": "TC_123122" + }, + "processingInformation": { + "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" + }, + "amountDetails": { + "totalAmount": "100", + "currency": "USD" } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] + }, + "paymentInformation": { + "tokenizedCard": { + "expirationYear": "2031", + "number": "4111111111111111", + "expirationMonth": "12", + "transactionType": "1" + } + }, + "consumerAuthenticationInformation": { + "cavv": "AAABCSIIAAAAAAACcwgAEMCoNh+=", + "xid": "T1Y0OVcxMVJJdkI0WFlBcXptUzE=" } } }, - "500": { - "description": "Unexpected error.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "title": "tmsV1Error500Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } + "example4": { + "summary": "Digital Payment - GooglePay", + "sample-name": "Process Payment with GooglePay", + "value": { + "clientReferenceInformation": { + "code": "TC_1231223" + }, + "processingInformation": { + "paymentSolution": "012", + "commerceIndicator": "internet" + }, + "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=" } } } - } - } - }, - "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": true, - "type": "string", - "minLength": 36, - "maxLength": 36 }, - { - "name": "tokenId", - "in": "path", - "description": "The TokenId of a Payment Instrument.", - "required": true, - "type": "string", - "minLength": 16, - "maxLength": 32 - } - ], - "operationId": "deletePaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "204": { - "description": "An existing Payment Instrument associated with the supplied `tokenId` has been deleted.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" + "example5": { + "summary": "Digital Payments - ApplePay", + "sample-name": "Process Payment with ApplePay", + "value": { + "clientReferenceInformation": { + "code": "TC_1231223" + }, + "processingInformation": { + "paymentSolution": "001", + "commerceIndicator": "internet" + }, + "orderInformation": { + "billTo": { + "country": "US", + "firstName": "John", + "lastName": "Deo", + "phoneNumber": "6504327113", + "address2": "Desk M3-5573", + "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=" + } } } }, - "403": { - "description": "Forbidden. The profile might not have permission to perform the token operation.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1Forbidden403Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } + "example6": { + "summary": "CyberSource MPOS - EMV", + "sample-name": "Process Payment with CyberSource MPOS EMV", + "value": { + "clientReferenceInformation": { + "code": "TC50171_16" + }, + "pointOfSaleInformation": { + "cardPresent": "Y", + "catLevel": "1", + "endlessAisleTransactionIndicator": "true", + "entryMode": "contact", + "terminalCapability": "1", + "emv": { + "fallbackCondition": "1", + "fallback": "true" + } + }, + "processingInformation": { + "commerceIndicator": "retail", + "paymentSolution": "011" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "15.0", + "currency": "USD" + } + }, + "paymentInformation": { + "fluidData": { + "descriptor": "EMV.PAYMENT.AnywhereCommerce.Walker", + "value": "ewogICJkYXRhIiA6ICJOZmNwRURiK1dLdzBnQkpsaTRcL1hlWm1ITzdUSng0bnRoMnc2Mk9ITVJQK3hCRlFPdFE0WWpRcnY0RmFkOHh6VExqT2VFQm5iNHFzeGZMYTNyNXcxVEdXblFGQnNzMWtPYnA0XC95alNtVE1JSGVjbGc5OFROaEhNb0VRcjJkRkFqYVpBTFAxSlBsdVhKSVwvbTZKSmVwNGh3VHRWZE16Z2laSUhnaWFCYzNXZVd1ZnYzc1l0cGRaZDZYZENEUFdLeXFkYjBJdUtkdkpBPT0iLAogICJzaWduYXR1cmUiIDogIkFxck1pKzc0cm1GeVBKVE9HN3NuN2p5K1YxTlpBZUNJVE56TW01N1B5cmc9IiwKICAic2lnbmF0dXJlQWxnSW5mbyIgOiAiSE1BQ3dpdGhTSEEyNTYiLAogICJoZWFkZXIiIDogewogICAgInRyYW5zYWN0aW9uSWQiIDogIjE1MTU2MjI2NjIuMTcyMjIwIiwKICAgICJwdWJsaWNLZXlIYXNoIiA6ICJcLzdmdldqRVhMazJPRWpcL3Z5bk1jeEZvMmRWSTlpRXVoT2Nab0tHQnpGTmM9IiwKICAgICJhcHBsaWNhdGlvbkRhdGEiIDogIkN5YmVyU291cmNlLlZNcG9zS2l0IiwKICAgICJlcGhlbWVyYWxQdWJsaWNLZXkiIDogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRW1JN0tScnRNN2NNelk5Zmw2UWt2NEQzdE9jU0NYR1hoOFwvK2R4K2s5c1Zrbk05UFQrOXRqMzk2YWF6QjRcL0hYaWlLRW9DXC9jUzdoSzF6UFk3MVwvN0pUUT09IgogIH0sCiAgInZlcnNpb24iIDogIjEuMCIKfQ==" } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "forbidden", - "message": "Request not permitted." - } - ] } } }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" + "example7": { + "summary": "Zero Dollar Authorization", + "sample-name": "Process Payment for Zero Dollar Authorization", + "value": { + "clientReferenceInformation": { + "code": "1234567890" + }, + "processingInformation": { + "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" + }, + "amountDetails": { + "totalAmount": 0, + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "5555555555554444", + "securityCode": "123", + "expirationMonth": "12" + } } - }, - "schema": { - "title": "tmsV1TokenNotFound404Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } + } + }, + "example8": { + "summary": "Level II Data", + "sample-name": "Process Payment with Level II Data", + "value": { + "clientReferenceInformation": { + "code": "TC50171_12" + }, + "processingInformation": { + "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" + }, + "invoiceDetails": { + "purchaseOrderNumber": "LevelII Auth Po" + }, + "amountDetails": { + "totalAmount": "112.00", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "securityCode": "123", + "expirationMonth": "12", + "type": "001" } } - }, - "examples": { - "application/json": { - "errors": [ + } + }, + "example9": { + "summary": "Level III Data", + "sample-name": "Process Payment with Level III Data", + "value": { + "clientReferenceInformation": { + "code": "TC50171_14" + }, + "processingInformation": { + "commerceIndicator": "internet", + "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": [ { - "type": "notFound", - "message": "Token not found" + "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" + } } } }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1TokenNotAvailable410Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } + "example10": { + "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" } - } - }, - "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": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "tmsV1FailedDependency424Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." + "example11": { + "summary": "Electronic Check Debits", + "sample-name": "Process Payment ECheck Debits", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "commerceIndicator": "internet" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "100", + "currency": "USD" + } + }, + "paymentInformation": { + "bank": { + "account": { + "number": "4100", + "type": "C" }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } + "routingNumber": "071923284" } } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } } }, - "500": { - "description": "Unexpected error.", - "headers": { - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "title": "tmsV1Error500Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } + "example12": { + "summary": "Service Fees with Credit Card transaction", + "sample-name": "Process Payment Service Fees with Credit Card transaction", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "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" + }, + "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" } } } @@ -17449,501 +3830,531 @@ } } }, - "/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.", + "/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": [ - "Key Generation" + "reversal" ], - "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", + "operationId": "authReversal", "x-devcenter-metaData": { - "categoryTag": "Flex" + "categoryTag": "Payments" }, - "produces": [ - "application/json" - ], "parameters": [ { + "name": "id", + "in": "path", + "description": "The payment ID returned from a previous payment request.", + "required": true, + "type": "string" + }, + { + "name": "authReversalRequest", "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." - } - } - } - } - ], - "x-example": { - "example0": { - "summary": "Generate Key", - "value": { - "encryptionType": "None" - } - } - }, - "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": { + "clientReferenceInformation": { "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": { + "code": { "type": "string", - "description": "Specifies the format of the public key; currently X.509." + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "algorithm": { + "comments": { "type": "string", - "description": "Algorithm used to encrypt the public key." + "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } }, - "publicKey": { + "reason": { "type": "string", - "description": "Base64 encoded public key value." + "description": "Reason for the authorization reversal. Possible value:\n\n - `34`: Suspected fraud\n\nCyberSource ignores this field for processors that do not support this value.\n\nFor details, see `auth_reversal_reason` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } }, - "jwk": { + "processingInformation": { "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": { + "paymentSolution": { "type": "string", - "description": "JWK RSA Modulus" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n" }, - "e": { + "reconciliationId": { "type": "string", - "description": "JWK RSA Exponent" - } - } - } - } - } - }, - "default": { - "description": "Error retrieving key.", - "schema": { - "type": "object", - "properties": { - "responseStatus": { - "properties": { - "status": { - "type": "number", - "description": "HTTP Status code." + "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" }, - "reason": { + "linkId": { "type": "string", - "description": "Error Reason Code." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "message": { + "reportGroup": { "type": "string", - "description": "Error Message." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "correlationId": { + "visaCheckoutId": { "type": "string", - "description": "API correlation ID." + "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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "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." - } + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } } } }, - "_links": { + "orderInformation": { "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." - } + "amountDetails": { + "type": "object", + "properties": { + "serviceFeeAmount": { + "type": "string", + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" } } }, - "documentation": { + "lineItems": { "type": "array", "items": { + "type": "object", "properties": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\n", + "default": 1 }, - "method": { + "unitPrice": { "type": "string", - "description": "HTTP method of the linked resource." + "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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } } - }, - "self": { + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { + "type": "object", "properties": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." - }, - "method": { + "tags": { "type": "string", - "description": "HTTP method of the linked resource." + "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" } } } } } - } - } - } - }, - "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", - "isClientSideApi": true, - "noAuth": true - }, - "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." + }, + "example": { + "clientReferenceInformation": { + "code": "TC50171_3" }, - "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." - } + "reversalInformation": { + "reason": "testing", + "amountDetails": { + "totalAmount": "102.21" } } } } } ], - "x-example": { - "example0": { - "summary": "Flex Tokenize Card", - "value": { - "keyId": "08z9hCmn4pRpdNhPJBEYR3Mc2DGLWq5j", - "cardInfo": { - "cardNumber": "4111111111111111", - "cardExpirationMonth": "12", - "cardExpirationYear": "2031", - "cardType": "001" - } - } - } - }, "responses": { - "200": { - "description": "Created payment token.", + "201": { + "description": "Successful response.", "schema": { - "title": "flexV1TokensPost200Response", + "title": "ptsV2PaymentsReversalsPost201Response", + "type": "object", "properties": { - "keyId": { - "type": "string", - "description": "The Key ID." + "_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." + } + } + } + } }, - "token": { + "id": { "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." + "maxLength": 26, + "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." }, - "maskedPan": { + "submitTimeUtc": { "type": "string", - "description": "The masked card number displaying the first 6 digits and the last 4 digits." + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" }, - "cardType": { + "status": { "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." + "description": "The status of the submitted transaction.\n\nPossible values:\n - REVERSED\n" }, - "signedFields": { + "reconciliationId": { "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." + "maxLength": 60, + "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\n" }, - "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." + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } }, - "discoverableServices": { + "reversalAmountDetails": { "type": "object", - "additionalProperties": { - "type": "object" + "properties": { + "reversedAmount": { + "type": "string", + "maxLength": 15, + "description": "Total reversed amount.\n\nFor details, see `auth_reversal_amount` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "originalTransactionAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount of the original transaction.\n\nFor details, see `original_transaction_amount` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } } - } - } - } - }, - "default": { - "description": "Error creating token.", - "schema": { - "type": "object", - "properties": { - "responseStatus": { + }, + "processorInformation": { + "type": "object", "properties": { - "status": { - "type": "number", - "description": "HTTP Status code." + "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" }, - "reason": { + "responseCode": { "type": "string", - "description": "Error Reason Code." + "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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\n" }, - "message": { + "responseCategoryCode": { "type": "string", - "description": "Error Message." + "maxLength": 32, + "description": "Processor-defined response category code. The associated detail error code is in the `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: 32\n - All other processors: 3\n" }, - "correlationId": { + "forwardedAcquirerCode": { "type": "string", - "description": "API correlation ID." + "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" }, - "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." - } - } - } + "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" } } }, - "_links": { + "issuerInformation": { "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." - } - } - } + "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 field is supported only on FDC Nashville Global and SIX.\n" + } + } + }, + "authorizationInformation": { + "type": "object", + "properties": { + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "The authorization code returned by the processor." }, - "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." - } - } - } + "reasonCode": { + "type": "string", + "maxLength": 50, + "description": "Reply flag for the original transaction." }, - "self": { + "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": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." - }, - "method": { + "tags": { "type": "string", - "description": "HTTP method of the linked resource." + "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" } } } } } + }, + "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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } } } } }, - "x-samplePayload": { - "keyId": "05BgbFie7vX5vzSMKOoqEAAdfpdR4kas", - "cardDetails": { - "cardNumber": "ejbhIpMEgYnIODcB4//rrVxMHrqHcnLD6pDRF36jlEk72bETAfiOoxmpI9pGiidqMmkgAnvJfVgR3CLAV5EdG4Mu5IWK26QRnVtwvsVEUtpah7IylbxV9MLvXh2FjIJskKCWNLidb1G4PN5963hnV3IoZd2pF99JwV9lPhOHT5ymlNeg7sTzQQDN1I0/yJApds+t79hl9QVp4PusUDfSsPQTtR2frzlH4V3W+XjHDhmy5oNhiUaVxv27cyG1SWeCKkVC9tc8zLy4pvlgoplrLV8JRaS9hfWalJjv2xtk3DXmNT2urtFv2evcI3LM/S29KlJjPXZcBp0IYyB/taunCA==", - "cardType": "001" + "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": "example12" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } } - }, - "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": { + "/pts/v2/payments/{id}/captures": { "post": { - "summary": "Create Decision Manager Case", - "description": "This is the combined request to the Decision Manager Service for a transaction sent to Cybersource.\nDecision Manager will return a decision based on the request values.\n", - "operationId": "createDecisionManagerCase", + "summary": "Capture a Payment", + "description": "Include the payment ID in the POST request to capture the payment amount.", "tags": [ - "decision manager" - ], - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/hal+json;charset=utf-8" + "capture" ], + "operationId": "capturePayment", "x-devcenter-metaData": { - "categoryTag": "Decision_Manager", - "sendDisabled": true, - "disabledReason": "DM API response is a mock response, Please integrate with DM API to test the real-time response from the server." + "categoryTag": "Payments" }, "parameters": [ { - "name": "createDecisionManagerCaseRequest", + "name": "capturePaymentRequest", "in": "body", "required": true, "schema": { "type": "object", - "required": [ - "orderInformation", - "clientReferenceInformation" - ], "properties": { "clientReferenceInformation": { "type": "object", @@ -17953,86 +4364,132 @@ "maxLength": 50, "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, + "transactionId": { + "type": "string", + "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, "comments": { "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order." - } - } - }, - "processorInformation": { - "type": "object", - "description": "Contains information related to the payment processor.", - "properties": { - "avs": { + "description": "Comments" + }, + "partner": { "type": "object", - "description": "Address Verification Service", "properties": { - "code": { + "originalTransactionId": { "type": "string", - "maxLength": 3, - "description": "Value returned for address verification from the Payments Authorization response." + "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" + }, + "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\n" } } } } }, - "paymentInformation": { + "processingInformation": { "type": "object", - "description": "Contains the payment data for this transaction.", "properties": { - "card": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 10, + "description": "Flag that indicates that the transaction includes airline data or restaurant data.\n\nThis field must be set to `airline` in order for airline data to be sent to the processor.\n\nFor example, if this field is not set to airline or is not included in the request, CyberSource does not send airline data to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor.\n\nWhen this field is not set to restaurant or is not included in the request, CyberSource does not send restaurant data to the processor.\n\nPossible Values:\n\n- **airline**\n- **restaurant**\n" + }, + "issuer": { "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 knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" - }, - "type": { + "discretionaryData": { "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "bin": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "authorizationOptions": { + "type": "object", + "properties": { + "authType": { "type": "string", - "maxLength": 6, - "description": "description: The BIN is the first six digits of the card's Primary Account Number (PAN).\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor more information, see \"Forced Captures\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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\nFor processor-specific information, see the `auth_type` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "expirationMonth": { + "verbalAuthCode": { "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" + "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#### 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" }, - "expirationYear": { + "verbalAuthTransactionId": { "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" + "maxLength": 15, + "description": "Transaction ID (TID).\n\n#### FDMS South\nThis field is required for verbal authorizations\nand forced captures with the American\nExpress card type to comply with the CAPN\nrequirements:\n- Forced capture: Obtain the value for this\nfield from the authorization response.\n- Verbal authorization: You cannot obtain a\nvalue for this field so CyberSource uses the\ndefault value of `000000000000000` (15\nzeros).\n\nFor more information about using this default value, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } }, - "tokenizedCard": { + "captureOptions": { "type": "object", - "description": "Use this object to submit a payment network token instead of card-based values.", "properties": { - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](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" - }, - "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" + "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" }, - "expirationYear": { + "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" + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "customer": { + "type": "object", + "properties": { + "customerId": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } } @@ -18040,196 +4497,179 @@ }, "orderInformation": { "type": "object", - "description": "Contains detailed order-level information.", "properties": { "amountDetails": { "type": "object", - "description": "Contains `currency` and `totalAmount` for this order.", - "required": [ - "currency" - ], "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "totalAmount": { + "discountAmount": { "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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" + "maxLength": 15, + "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" }, - "shippingMethod": { + "dutyAmount": { "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", - "description": "Contains recipient shipping information.", - "properties": { - "address1": { + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" + }, + "gratuityAmount": { "type": "string", - "maxLength": 60, - "description": "First line of the shipping address." + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" }, - "address2": { + "taxAmount": { "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address." + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" }, - "administrativeArea": { + "nationalTaxIncluded": { "type": "string", - "maxLength": 2, - "description": "State or province of the shipping address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + "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\nFor processor-specific information, see the national_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" }, - "country": { + "taxAppliedAfterDiscount": { "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", - "maxLength": 2 + "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\nFor processor-specific information, see the order_discount_management_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" }, - "locality": { + "taxAppliedLevel": { "type": "string", - "maxLength": 50, - "description": "City of the shipping address." + "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\nFor processor-specific information, see the tax_management_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" }, - "firstName": { + "taxTypeCode": { "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + "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\nFor processor-specific information, see the total_tax_type_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" }, - "lastName": { + "freightAmount": { "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + "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" }, - "phoneNumber": { + "foreignAmount": { "type": "string", "maxLength": 15, - "description": "Phone number associated with the shipping address." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "postalCode": { + "foreignCurrency": { "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" - } - } - }, - "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": { - "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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "quantity": { - "type": "number", - "minimum": 1, - "maximum": 9999999999, - "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\n", - "default": 1 - }, - "productSKU": { - "type": "string", - "maxLength": 255, - "description": "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" - }, - "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 set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" - }, - "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "gift": { - "type": "boolean", - "description": "Determines 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": { + "maxLength": 5, + "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" + }, + "amexAdditionalAmounts": { + "type": "array", + "items": { "type": "object", - "description": "Contains travel-related passenger details.", "properties": { - "type": { + "code": { "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" + "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" }, - "status": { + "amount": { "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": { + "maxLength": 12, + "description": "Additional amount. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the additional_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" + } + } + } + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { "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.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "firstName": { + "amount": { "type": "string", - "maxLength": 60, - "description": "Passenger's first name." + "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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "lastName": { + "rate": { "type": "string", - "maxLength": 60, - "description": "Passenger's last name." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "id": { + "code": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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" }, - "email": { + "taxId": { "type": "string", - "maxLength": 255, - "description": "Passenger's email address, including the full domain name, such as jdoe@example.com." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "nationality": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "exemptionCode": { "type": "string", - "maxLength": 2, - "description": "Passenger's nationality country. Use the two character ISO Standard Country Codes." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + }, + "cashbackAmount": { + "type": "string", + "maxLength": 13, + "description": "Cashback amount requested by the customer. If a cashback amount is included in the request, it must be included in the orderInformation.amountDetails.totalAmount value.\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#### 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**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_firstname` 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" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + }, + "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.\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": 60, @@ -18240,1407 +4680,1014 @@ "maxLength": 60, "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" }, + "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\nFor processor-specific information, see the `bill_city` 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" + }, "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\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 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 `bill_state` 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" }, + "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 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 `bill_zip` 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" + }, "country": { "type": "string", "maxLength": 2, "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" }, - "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\nFor processor-specific information, see the `bill_city` 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" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\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**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_firstname` 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" - }, - "lastName": { + "email": { "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + "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" }, "phoneNumber": { "type": "string", "maxLength": 15, "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + } + } + }, + "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\nand Canada.\n" }, - "email": { + "country": { "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" + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", + "maxLength": 2 }, "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 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 `bill_zip` 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" + "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" } } - } - } - }, - "buyerInformation": { - "type": "object", - "description": "Contains information about the buyer.", - "properties": { - "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 Developer Guide Using the SCMP API.](https://www.cybersource.com/developers/documentation/fraud_management/)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "personalIdentification": { + "lineItems": { "type": "array", "items": { "type": "object", "properties": { - "type": { + "productCode": { "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\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" + "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "id": { + "productName": { "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" + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" }, - "issuedBy": { + "productSku": { "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.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 48, - "description": "IP address of the customer.\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" - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - }, - "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": { + "maxLength": 255, + "description": "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" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 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.](https://www.cybersource.com/developers/documentation/fraud_management/)\n" + "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" }, - "destination": { + "taxTypeCode": { "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.](https://www.cybersource.com/developers/documentation/fraud_management/)\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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" }, - "departureDateTime": { + "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": 25, - "description": "Departure date and time for the each 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\nWhere:\\\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\nairline is based in city A, but the flight departs from city\nB, `z` is the time zone of city B at the time of departure.\\\n**Important** For travel information, use GMT instead of UTC, or use the local time zone.\n\n#### Examples\n\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\\\n\n**Note** 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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "weight": { + "type": "string", + "maxLength": 9, + "description": "Weight of the item. See Numbered Elements." + }, + "weightIdentifier": { + "type": "string", + "maxLength": 1, + "description": "Type of weight. See Numbered Elements.\n\nPossible values:\n- B: Billed weight\n- N: Actual net weight\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\nspecifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC).\n\nSee Numbered Elements.\n" + }, + "referenceDataCode": { + "type": "string", + "maxLength": 2, + "description": "Code that identifies the value of the corresponding item_#_referenceData_#_number field. See Numbered Elements.\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" + }, + "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" } } } - } - } - }, - "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": "riskV1DecisionsPost201Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "properties": { - "self": { + }, + "invoiceDetails": { "type": "object", "properties": { - "href": { + "purchaseOrderNumber": { "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." + "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" }, - "method": { + "purchaseOrderDate": { "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": { + "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", - "description": "This is the endpoint of the resource that was created by the successful request." + "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" }, - "method": { + "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", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + "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" + } + } + } } } }, - "capture": { + "shippingDetails": { "type": "object", "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { + "shipFromPostalCode": { "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + "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" } } } } }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" - }, - "submitTimeLocal": { - "type": "string", - "description": "Time that the transaction was submitted in local time." + "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\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" + } + } }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - `ACCEPTED`\n - `REJECTED`\n - `PENDING_REVIEW`\n" + "deviceInformation": { + "type": "object", + "properties": { + "hostName": { + "type": "string", + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." + }, + "ipAddress": { + "type": "string", + "maxLength": 48, + "description": "IP address of the customer.\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" + } + } }, - "riskInformation": { + "merchantInformation": { "type": "object", - "description": "Contains the result of risk assessment.", "properties": { - "profile": { + "merchantDescriptor": { "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" + "description": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" }, - "desinationQueue": { + "alternateName": { "type": "string", - "maxLength": 255, - "description": "Name of the queue where orders that are not automatically accepted are sent.\n" + "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" }, - "selectorRule": { + "contact": { "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\nFor all possible values, see the `decision_velocity_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", - "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\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", - "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\nFor all possible values, see the `score_hotlist_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", - "items": { - "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" }, - "identityChange": { - "type": "array", - "description": "Indicates excessive identity changes. The threshold is variable depending on the identity elements being\ncompared. This field can contain one or more information codes, separated by carets (^).\n\nFor all possible values, see the `score_identity_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", - "items": { - "type": "string" - } + "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" }, - "internet": { - "type": "array", - "description": "Indicates a problem with the customer\u2019s email address, IP address, or billing address.\n\nFor all possible values, see the `score_internet_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", - "items": { - "type": "string" - } + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "phone": { - "type": "array", - "description": "Indicates a problem with the customer\u2019s phone number.\n\nFor all possible values, see the `score_phone_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", - "items": { - "type": "string" - } + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "suspicious": { - "type": "array", - "description": "Indicates that the customer provided potentially suspicious information.\n\nFor all possible values, see the `score_suspicious_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", - "items": { - "type": "string" - } + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "globalVelocity": { - "type": "array", - "description": "Indicates that the customer has a high purchase frequency.\n\nFor all possible values, see the `score_velocity_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", - "items": { - "type": "string" - } + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" } } }, - "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\nFor all possible values, see the `decision_velocity_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", - "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\nFor all possible values, see the `decision_velocity_morphing_#_count` 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" - }, - "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** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\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" - } - } - } + "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" }, - "casePriority": { + "categoryCode": { "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" + "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" }, - "localTime": { + "vatRegistrationNumber": { "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" + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\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" }, - "score": { + "serviceFeeDescriptor": { "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" - } + "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" }, - "modelUsed": { + "contact": { "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" + "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" }, - "result": { + "state": { "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" + "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" } } }, - "ipAddress": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "description": "Contains detailed response information about the customer's IP address.", "properties": { - "anonymizerStatus": { + "name": { "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" + "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" }, - "locality": { + "address1": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { + "locality": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\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" }, - "routingMethod": { + "phoneNumber": { "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" + "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" } } - }, - "providers": { + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { "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." - } - } - } - } + "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" + }, + "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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", + "default": false } } }, - "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." - } - } - } + "amexCapnData": { + "type": "string", + "maxLength": 12, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" } } } }, - "paymentInformation": { + "installmentInformation": { "type": "object", - "description": "Contains response information about the payment.", "properties": { - "binCountry": { + "firstInstallmentDate": { "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" + "maximum": 6, + "description": "Date of the first installment payment. Format: YYMMDD. When you do not include this field, CyberSource sends a\nstring 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 file5:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" }, - "accountType": { + "invoiceData": { "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" + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "issuer": { + "paymentType": { "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" + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "scheme": { + "additionalCosts": { "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" + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "bin": { + "additionalCostsPercentage": { "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" - } - } - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "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" + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "message": { + "insurancePercentage": { "type": "string", - "description": "The detail message related to the status and reason listed above." + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "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`\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 - INVALID_REQUEST\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_MERCHANT_CONFIGURATION\n - PROCESSOR_UNAVAILABLE\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } + "monthlyInterestRate": { + "type": "string", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "maximum": 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" } } } - } - } - }, - "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`\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 - 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 - INVALID_OR_MISSING_CONFIG\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Basic DM Transaction", - "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" - } - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "54323007" }, - "id": "5526663169230178269497", - "riskInformation": { - "score": "H", - "localTime": "12:11:56", - "infoCodes": { - "address": [ - "COR-BA", - "MM-BIN" - ] - }, - "profile": { - "name": "Example", - "selectorRule": "Default Active Profile" + "example": { + "clientReferenceInformation": { + "code": "TC50171_3" }, - "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" + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" } - ], - "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." + "x-example": { + "example0": { + "summary": "Capture a Payment", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + } }, - { - "decision": "IGNORE", - "name": "CVN not submitted" + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] } - ], - "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" + "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": "example12" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } } } }, - "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" + { + "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." + } + } + } + } }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "merchantDefinedInformation": [ - { - "key": "1", - "value": "Test" + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." }, - { - "key": "2", - "value": "Test2" - } - ] - }, - "responseValue": { - "riskInformation": { - "score": { - "result": "99", - "modelUsed": "default" + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" }, - "localTime": "10:02:05", - "profile": { - "name": "Profile 1_test", - "selectorRule": "Default Active Profile" + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n" }, - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\n" }, - "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" + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" + "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 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + }, + "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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\n" + } + } + } + } } }, - "travelInformation": { - "completeRoute": "SFO-JFK:JFK-BLR", - "departureTime": "2011-03-20 11:30pm GMT", - "journeyType": "One way", - "legs": [ - { - "destination": "JFK", - "origination": "SFO" + "example": { + "_links": { + "self": { + "href": "/pts/v2/captures/4963014519526177701545", + "method": "GET" }, - { - "destination": "BLR", - "origination": "JFK" + "refund": { + "href": "/pts/v2/captures/4963014519526177701545/refunds", + "method": "POST" + }, + "void": { + "href": "/pts/v2/captures/4963014519526177701545/voids", + "method": "POST" } - ] - } - }, - "responseValue": { - "riskInformation": { - "score": { - "result": "99", - "modelUsed": "default" }, - "localTime": "10:02:05", - "profile": { - "name": "Profile 1_test", - "selectorRule": "Default Active Profile" + "id": "4963014519526177701545", + "submitTimeUtc": "2017-06-01T071731Z", + "status": "200", + "reconciliationId": "39570715X3E1LBQA", + "statusInformation": { + "reason": "SUCCESS", + "message": "Successful transaction." }, - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." + "clientReferenceInformation": { + "code": "TC50171_3" }, - "casePriority": "3" - }, - "rules": [ - { - "decision": "IGNORE", - "name": "Correctable errors in addresses" + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } } - ] + } } }, - "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" + "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`\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" }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "buyerInformation": { - "hashedPassword": "", - "dateOfBirth": "1998-05-05", - "personalIdentification": [ - { - "id": "1a23apwe98", - "type": "CPF" - } - ] - } - }, - "responseValue": { - "riskInformation": { - "score": { - "result": "99", - "modelUsed": "default" + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" }, - "localTime": "10:02:05", - "profile": { - "name": "Profile 1_test", - "selectorRule": "Default Active Profile" + "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" }, - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." }, - "casePriority": "3" - }, - "rules": [ - { - "decision": "REJECT", - "name": "Incorrect BUYER data " + "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" + } + } + } } - ] + } } }, - "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": "INDIA", - "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" - ] + "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`\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" }, - "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." + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" }, - "casePriority": "3" + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n - INVALID_OR_MISSING_CONFIG\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } } } - }, - "example6": { - "summary": "SCORE_EXCEEDS_THRESHOLD response", + } + }, + "x-example": { + "example0": { + "summary": "Capture a Payment", "value": { "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } + "code": "TC50171_3" }, "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": "INDIA", - "firstName": "James", - "lastName": "Smith", - "phoneNumber": "7606160717", - "administrativeArea": "KA", - "postalCode": "560056" + "totalAmount": "102.21", + "currency": "USD" } } }, - "responseValue": { - "clientReferenceInformation": { - "code": "54323007" - }, - "errorInformation": { - "reason": "SCORE_EXCEEDS_THRESHOLD", - "message": "Soft Decline - Fraud score exceeds threshold." + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example0" }, - "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" + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" } - }, - "status": "REJECTED", - "submitTimeUtc": "2019-03-14T09:31:35Z" + ] } }, - "example7": { - "summary": "DECISION_PROFILE_REJECT response", + "example1": { + "summary": "Capture a Payment - Service Fee", "value": { "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } + "code": "TC50171_3" }, "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": { + "totalAmount": "2325.00", "currency": "USD", - "totalAmount": "144.14" + "serviceFeeAmount": "30.0" } }, - "riskInformation": { - "profile": { - "name": "profile2" - }, - "score": { - "ignoreAvsResults": "false" + "merchantInformation": { + "serviceFeeDescriptor": { + "name": "Vacations Service Fee", + "contact": 8009999999, + "state": "CA" } } }, - "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" + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example12" }, - "status": "REJECTED", - "submitTimeUtc": "2019-03-14T09:31:29Z" + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] } } } } }, - "/pts/v2/payouts": { + "/pts/v2/payments/{id}/refunds": { "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\nan Original Credit Transaction (OCT).\n", + "summary": "Refund a Payment", + "description": "Include the payment ID in the POST request to refund the payment amount.\n", "tags": [ - "Payouts" + "refund" ], - "operationId": "octCreatePayment", + "operationId": "refundPayment", "x-devcenter-metaData": { - "categoryTag": "Payouts" + "categoryTag": "Payments" }, "parameters": [ { - "name": "octCreatePaymentRequest", + "name": "refundPaymentRequest", "in": "body", "required": true, "schema": { @@ -19651,566 +5698,676 @@ "properties": { "code": { "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "transactionId": { + "type": "string", + "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 American Express Direct, FDC Nashville Global, and SIX.\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 partner ID of 999 in reports, the partner ID 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", + "default": false + } + } } } }, - "orderInformation": { + "paymentInformation": { "type": "object", "properties": { - "amountDetails": { + "card": { "type": "object", "properties": { - "totalAmount": { + "number": { "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\n" + "maxLength": 20, + "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" }, - "currency": { + "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\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "accountEncoderId": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" }, - "surcharge": { + "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" + } + } + }, + "bank": { + "type": "object", + "properties": { + "account": { "type": "object", "properties": { - "amount": { + "type": { "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\nFor processor-specific information, see the surcharge_amount field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } }, - "billTo": { + "customer": { "type": "object", "properties": { - "firstName": { + "customerId": { "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\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**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_firstname` 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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "lastName": { + "subTypeName": { "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n- `DEBIT` (use this for a PIN debit transaction)\n" }, - "address1": { + "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": 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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" + "maxLength": 19, + "description": "Grand total for the order. This value cannot be negative. You can include a decimal point (.), but no other special characters. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\n" }, - "address2": { + "currency": { "type": "string", - "maxLength": 60, - "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "country": { + "discountAmount": { "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + "maxLength": 15, + "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" }, - "locality": { + "dutyAmount": { "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\nFor processor-specific information, see the `bill_city` 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" + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" }, - "administrativeArea": { + "gratuityAmount": { "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\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 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 `bill_state` 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" + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" + }, + "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\nFor processor-specific information, see the national_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" + }, + "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\nFor processor-specific information, see the order_discount_management_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" + }, + "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\nFor processor-specific information, see the tax_management_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" + }, + "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\nFor processor-specific information, see the total_tax_type_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" + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "foreignCurrency": { + "type": "string", + "maxLength": 5, + "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" + }, + "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\nFor processor-specific information, see the additional_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" + } + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } }, - "postalCode": { + "serviceFeeAmount": { "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 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 `bill_zip` 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" + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" }, - "phoneNumber": { + "originalCurrency": { "type": "string", "maxLength": 15, - "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + "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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" }, - "phoneType": { + "cashbackAmount": { "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" + "maxLength": 13, + "description": "Cashback amount requested by the customer. If a cashback amount is included in the request, it must be included in the orderInformation.amountDetails.totalAmount value.\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\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": { + "billTo": { "type": "object", "properties": { - "name": { - "type": "string", - "description": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" - }, - "locality": { - "type": "string", - "maxLength": 13, - "description": "Merchant's City.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "postalCode": { + "firstName": { "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\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**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_firstname` 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" }, - "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" - }, - "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": { + "lastName": { "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" + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" }, - "number": { + "company": { "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" - }, - "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.\n" - }, - "countryCode": { - "type": "string", - "maxLength": 2, - "description": "Country of sender. Use the ISO Standard Country Codes.\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" - } - } - }, - "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\nSee https://developer.visa.com/request_response_codes#network_id_and_sharing_group_code , under section 'Network ID and Sharing Group Code' on the left panel for available values\n" - }, - "commerceIndicator": { - "type": "string", - "maxLength": 13, - "description": "Type of transaction.\n\nSome payment card companies use this information when determining discount rates. 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 here.\n\nFor details, see the `e_commerce_indicator` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nPossible value for Payouts:\n- internet\n\n#### Ingenico ePayments\nIngenico ePayments was previously called _Global Collect_.\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### Other Types of Transactions\nFor details, see \"Commerce Indicators\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { + "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.\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": 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" + "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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" }, - "acquirerBin": { + "address2": { "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" + "maxLength": 60, + "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" }, - "retrievalReferenceNumber": { + "locality": { "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" + "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\nFor processor-specific information, see the `bill_city` 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" }, - "accountFundingReferenceId": { + "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\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 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 `bill_state` 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" + }, + "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 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 `bill_zip` 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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + }, + "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" + }, + "phoneNumber": { "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" + "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" } } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { + }, + "shipTo": { "type": "object", "properties": { - "type": { + "administrativeArea": { "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "maxLength": 2, + "description": "State or province of the shipping address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" }, - "number": { + "country": { "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", + "maxLength": 2 }, - "expirationMonth": { + "postalCode": { "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" + "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" + } + } + }, + "lineItems": { + "type": "array", + "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" + }, + "productSku": { + "type": "string", + "maxLength": 255, + "description": "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" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "expirationYear": { + "purchaseOrderDate": { "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" + "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" }, - "sourceAccountType": { + "purchaseContactName": { "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" + "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" + } + } + } } } }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - } - } - } - }, - "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": { + "shippingDetails": { "type": "object", "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { + "shipFromPostalCode": { "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + "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" } } } } }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "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": { + "buyerInformation": { "type": "object", "properties": { - "reason": { + "merchantCustomerId": { "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" + "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" }, - "message": { + "vatRegistrationNumber": { "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" - } - } - } + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\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" } } }, - "clientReferenceInformation": { + "deviceInformation": { "type": "object", "properties": { - "code": { + "hostName": { "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." }, - "submitLocalDateTime": { + "ipAddress": { "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" + "maxLength": 48, + "description": "IP address of the customer.\n" }, - "ownerMerchantId": { + "userAgent": { "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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" } } }, @@ -20218,421 +6375,248 @@ "type": "object", "properties": { "merchantDescriptor": { + "type": "object", "properties": { "name": { "type": "string", "description": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" }, - "locality": { + "alternateName": { "type": "string", "maxLength": 13, - "description": "Merchant's City.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "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" }, - "country": { + "contact": { "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "totalAmount": { + "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": 19, - "description": "Grand total for the order. This value cannot be negative. You can include a decimal point (.), but no other special characters. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\n" + "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" }, - "currency": { + "locality": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "maxLength": 13, + "description": "Merchant's City.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "settlementAmount": { + "country": { "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.\n" + "maxLength": 2, + "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "settlementCurrency": { + "postalCode": { "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.\n" - } - } - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Issuer-generated approval code for the transaction." + "maxLength": 14, + "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "Transaction status from the processor." + "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" }, - "transactionId": { + "vatRegistrationNumber": { "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" + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\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" }, - "systemTraceAuditNumber": { + "cardAcceptorReferenceNumber": { "type": "string", - "maxLength": 6, - "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\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\nFor details, see `receipt_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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" }, - "responseCodeSource": { + "taxId": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } }, - "recipientInformation": { + "aggregatorInformation": { "type": "object", "properties": { - "card": { + "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": { - "balance": { + "name": { "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" + "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" }, - "currency": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": "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 - DEBIT_CARD_USEAGE_EXCEEDD_LIMIT\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`\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 - 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 - INVALID_OR_MISSING_CONFIG\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Payout (Card not Token)", - "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)", - "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\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" + } + } + } + } + }, + "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" + }, + "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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", + "default": false + } + } + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + } } }, - "paymentInformation": { - "customer": { - "customerId": "7500BB199B4270EFE05340588D0AFCAD" + "example": { + "clientReferenceInformation": { + "code": "Testing-VDP-Payments-Refund" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } } - }, - "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" - ], - "operationId": "getTransaction", - "x-devcenter-metaData": { - "categoryTag": "Transaction_Details" - }, - "parameters": [ + }, { "name": "id", "in": "path", - "description": "Request ID.\n", + "description": "The payment ID. This ID is returned from a previous payment request.", "required": true, "type": "string" } ], "responses": { - "200": { + "201": { "description": "Successful response.", "schema": { - "title": "tssV2TransactionsGet200Response", + "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." }, - "rootId": { - "type": "string", - "maxLength": 26, - "description": "Payment Request Id" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\n" - }, - "merchantId": { + "submitTimeUtc": { "type": "string", - "description": "Your CyberSource merchant ID." + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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." + "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n" }, - "submitTimeUTC": { + "reconciliationId": { "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" - }, - "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\nFor details, see `auth_rcode` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "rFlag": { - "type": "string", - "description": "One-word description of the result of the application.\n\nFor details, see `auth_rflag` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "applications": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The CyberSource payment application processed for the transaction.\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": "string", - "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 Developer Guide Using the SCMP API.](https://www.cybersource.com/developers/documentation/fraud_management/)\n" - } - } + "maxLength": 60, + "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\n" }, "clientReferenceInformation": { "type": "object", @@ -20642,326 +6626,445 @@ "maxLength": 50, "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": "The description for this field is not available." - }, - "applicationName": { - "type": "string", - "description": "The application name of client which is used to submit the request." - }, - "applicationUser": { - "type": "string", - "description": "The description for this field is not available." - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order." - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "cavv": { - "type": "string", - "maxLength": 40, - "description": "Cardholder authentication verification value (CAVV)." - }, - "xid": { + "submitLocalDateTime": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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" }, - "transactionId": { + "ownerMerchantId": { "type": "string", - "description": "Payer auth Transaction identifier." + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } }, - "deviceInformation": { + "refundAmountDetails": { "type": "object", "properties": { - "ipAddress": { - "type": "string", - "maxLength": 48, - "description": "IP address of the customer.\n" - }, - "hostName": { + "refundAmount": { "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." + "maxLength": 15, + "description": "Total amount of the refund." }, - "cookiesAccepted": { + "currency": { "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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" } } }, - "errorInformation": { + "processorInformation": { "type": "object", "properties": { - "reason": { + "transactionId": { "type": "string", - "description": "1-word description of why a request succeeded or failed.\n" + "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" }, - "message": { + "forwardedAcquirerCode": { "type": "string", - "description": "The user-facing description for why a request succeeded or failed.\n" + "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" }, - "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" - } + "merchantNumber": { + "type": "string", + "maxLength": 15, + "description": "Identifier that was assigned to you by your acquirer.\n\nThis value must be printed on the receipt.\n\nThis field is supported only on **American Express Direct**, **FDC Nashville Global**, and **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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" } } } } }, - "installmentInformation": { + "orderInformation": { "type": "object", "properties": { - "numberOfInstallments": { - "type": "string", - "description": "Number of Installments." + "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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\n" + } + } } } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/refunds/4963014779006178301545", + "method": "GET" + }, + "void": { + "href": "/pts/v2/refunds/4963014779006178301545/voids", + "method": "POST" + } }, - "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\nFor details, see the `marking_reason` field description in [Decision Manager Using the SCMP API Developer Guide.](https://www.cybersource.com/developers/documentation/fraud_management/)\n" - } + "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" } }, - "merchantDefinedInformation": { + "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`\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 - 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", - "description": "The object containing the custom data that the merchant defines.\n", "items": { "type": "object", "properties": { - "key": { + "field": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "description": "This is the flattened JSON object field name/path that is either missing or invalid." }, - "value": { + "reason": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" + } + } + }, + "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": "Include the capture ID in the POST request to refund the captured amount.\n", + "tags": [ + "refund" + ], + "operationId": "refundCapture", + "x-devcenter-metaData": { + "categoryTag": "Payments" + }, + "parameters": [ + { + "name": "refundCaptureRequest", + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "transactionId": { + "type": "string", + "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 American Express Direct, FDC Nashville Global, and SIX.\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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\n" + } } } } }, - "merchantInformation": { + "processingInformation": { "type": "object", "properties": { - "merchantDescriptor": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { - "name": { - "type": "string", - "description": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", + "default": false } } } } }, - "orderInformation": { + "paymentInformation": { "type": "object", "properties": { - "billTo": { + "card": { "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#### 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**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_firstname` 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" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" - }, - "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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" - }, - "address2": { + "number": { "type": "string", - "maxLength": 60, - "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" + "maxLength": 20, + "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" }, - "locality": { + "expirationMonth": { "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\nFor processor-specific information, see the `bill_city` 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" + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" }, - "administrativeArea": { + "expirationYear": { "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\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 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 `bill_state` 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" + "maxLength": 4, + "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" }, - "postalCode": { + "type": { "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 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 `bill_zip` 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" + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "company": { + "accountEncoderId": { "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.\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" + "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" }, - "email": { + "issueNumber": { "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" + "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" }, - "country": { + "startMonth": { "type": "string", "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" - }, - "title": { - "type": "string", - "maxLength": 60, - "description": "Title.\n" + "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" }, - "phoneNumber": { + "startYear": { "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + "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" } } }, - "shipTo": { + "bank": { "type": "object", "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address." - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address." - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address." - }, - "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\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 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 `bill_state` 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" - }, - "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" - }, - "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.", - "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 API, 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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." + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "subTypeName": { + "type": "string", + "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n- `DEBIT` (use this for a PIN debit transaction)\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": { @@ -20975,2331 +7078,5220 @@ "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" + }, + "dutyAmount": { + "type": "string", + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + }, "taxAmount": { "type": "string", "maxLength": 12, "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" }, - "authorizedAmount": { + "nationalTaxIncluded": { "type": "string", - "maxLength": 15, - "description": "Amount that was authorized.\n" + "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\nFor processor-specific information, see the national_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" }, - "settlementAmount": { + "taxAppliedAfterDiscount": { "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.\n" + "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\nFor processor-specific information, see the order_discount_management_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" }, - "settlementCurrency": { + "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\nFor processor-specific information, see the tax_management_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" + }, + "taxTypeCode": { "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.\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" + "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\nFor processor-specific information, see the total_tax_type_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" }, - "shippingMethod": { + "freightAmount": { "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" - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "paymentType": { - "type": "object", - "properties": { - "name": { + "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", - "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.\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "subTypeName": { + "foreignCurrency": { "type": "string", - "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + "maxLength": 5, + "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "fundingSource": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type Funding Source is the Financial Account which holds the financial assets used to fund a transaction initiated with a given Payment Type. Examples: Bank of America Debit, Wells Consumer Checking\n" - }, - "type": { - "type": "string", - "description": "It is type of funding source. Examples: US Checking Account, Credit Account, Stored Value Account\n" - }, - "credential": { - "type": "string", - "description": "It is the credential of the funding source. Examples: Credit Card PAN, Checking Account Number\n" - }, - "affiliations": { - "type": "string", - "description": "It is affiliation of funding source such as Visa, Master Card, ACH.\n" - }, - "underwriter": { - "type": "string", - "description": "It is underwrite for the given funding source. Examples: Bank of America, Wells Fargo, PayPal\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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" + }, + "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\nFor processor-specific information, see the additional_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" + } } } }, - "method": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } + }, + "serviceFeeAmount": { "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal" + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" }, - "authenticationMethod": { + "originalCurrency": { "type": "string", - "description": "A Payment Type Authentication Method is the means used to verify that the presenter of the Payment Type credential is an authorized user of the Payment Instrument.\nExamples: 3DSecure \u2013 Verified by Visa, 3DSecure \u2013 MasteCard Secure Code\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { + "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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + }, + "cashbackAmount": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "maxLength": 13, + "description": "Cashback amount requested by the customer. If a cashback amount is included in the request, it must be included in the orderInformation.amountDetails.totalAmount value.\n" } } }, - "card": { + "billTo": { "type": "object", "properties": { - "suffix": { + "firstName": { "type": "string", - "description": "Last four digits of the cardholder\u2019s account number. This field is returned only for tokenized transactions.\nYou can use this value on the receipt that you give to the cardholder.\n\n**Note** This field is returned only for CyberSource through VisaNet and FDC Nashville Global.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 85\n- Field: American Express last 4 PAN return indicator.\n" + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\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**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_firstname` 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" }, - "prefix": { + "lastName": { "type": "string", - "maxLength": 6, - "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n" + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" }, - "expirationMonth": { + "company": { "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" + "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.\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" }, - "expirationYear": { + "address1": { "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" + "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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" }, - "startMonth": { + "address2": { "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" + "maxLength": 60, + "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" }, - "startYear": { + "locality": { "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" + "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\nFor processor-specific information, see the `bill_city` 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" + }, + "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\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 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 `bill_state` 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" }, - "issueNumber": { + "postalCode": { "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" + "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 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 `bill_zip` 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" }, - "type": { + "country": { "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" }, - "accountEncoderId": { + "email": { "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" + "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" }, - "useAs": { + "phoneNumber": { "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" + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" } } }, - "invoice": { + "shipTo": { "type": "object", "properties": { - "number": { + "administrativeArea": { "type": "string", - "description": "Invoice Number." + "maxLength": 2, + "description": "State or province of the shipping address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" }, - "barcodeNumber": { + "country": { "type": "string", - "description": "Barcode Number." + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", + "maxLength": 2 }, - "expirationDate": { + "postalCode": { "type": "string", - "description": "Expiration Date." + "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" } } }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "lineItems": { + "type": "array", + "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" + }, + "productSku": { + "type": "string", + "maxLength": 255, + "description": "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" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } } } } } }, - "accountFeatures": { + "invoiceDetails": { "type": "object", "properties": { - "balanceAmount": { + "purchaseOrderNumber": { "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n" + "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" }, - "previousBalanceAmount": { + "purchaseOrderDate": { "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n" + "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" }, - "currency": { + "purchaseContactName": { "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\nFor details, see `auth_account_balance_currency` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n" - }, - "commerceIndicator": { - "type": "string", - "maxLength": 20, - "description": "Type of transaction. Some payment card companies use this information when determining discount rates. When you\nomit this field for **Ingenico ePayments**, the processor uses the default transaction type they have on file\nfor you instead of the default value listed here.\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": { + "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": "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor more information, see \"Forced Captures\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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\nFor processor-specific information, see the `auth_type` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + "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" + } + } + } } } }, - "bankTransferOptions": { + "shippingDetails": { "type": "object", "properties": { - "secCode": { + "shipFromPostalCode": { "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\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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" } } } } }, - "processorInformation": { + "buyerInformation": { "type": "object", "properties": { - "processor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of 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\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "networkTransactionId": { + "merchantCustomerId": { "type": "string", - "description": "The description for this field is not available." + "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" }, - "responseId": { + "vatRegistrationNumber": { "type": "string", - "description": "Response ID sent from the processor.\n" - }, - "providerTransactionId": { + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\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", - "description": "The description for this field is not available." + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." }, - "approvalCode": { + "ipAddress": { "type": "string", - "description": "Authorization code. Returned only when the processor returns this value.\n" + "maxLength": 48, + "description": "IP address of the customer.\n" }, - "responseCode": { + "userAgent": { "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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\n" - }, - "avs": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 1, - "description": "AVS result code.\n" - }, - "codeRaw": { - "type": "string", - "maxLength": 10, - "description": "AVS result code sent directly from the processor. Returned only when the processor returns this value.\nImportant Do not use this field to evaluate the result of AVS. Use for debugging purposes only.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" - } - } - }, - "electronicVerificationResults": { + "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": { - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "description": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" }, - "nameRaw": { + "alternateName": { "type": "string", - "maxLength": 30, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s name.\n" + "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" }, - "phoneNumber": { + "contact": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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" }, - "phoneNumberRaw": { + "address1": { "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s phone number." + "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" }, - "street": { + "locality": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "maxLength": 13, + "description": "Merchant's City.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "streetRaw": { + "country": { "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s street address." + "maxLength": 2, + "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "maxLength": 14, + "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" }, - "postalCodeRaw": { + "administrativeArea": { "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s postal code." + "maxLength": 3, + "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" } } }, - "systemTraceAuditNumber": { - "type": "string", - "maxLength": 6, - "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\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\nFor details, see `receipt_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "responseCodeSource": { + "vatRegistrationNumber": { "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" - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "entryMode": { + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\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": 11, - "description": "Method of entering credit 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.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD).\n - `swiped`: Read from credit card magnetic stripe.\n\nThe contact, contactless, and msd values are supported only for EMV transactions.\n\nFor details, see the `pos_entry_mode` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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" }, - "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.\n\nThe values of 4 and 5 are supported only for EMV transactions.\n* Applicable only for CTV for Payouts.\n\nFor processor-specific details, see the `terminal_capability` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } }, - "riskInformation": { + "aggregatorInformation": { "type": "object", "properties": { - "profile": { + "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", - "description": "The name of the profile.\n" + "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" }, - "decision": { + "address1": { "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": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", - "description": "The name of the profile.\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "decision": { + "administrativeArea": { "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." - } + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "result": { - "type": "integer", - "description": "The description for this field is not available.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\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" } } - }, - "localTime": { - "type": "string", - "description": "Time that the transaction was submitted in local time." - } - } - }, - "senderInformation": { - "type": "object", - "properties": { - "referenceNumber": { - "type": "string", - "maxLength": 19, - "description": "Reference number generated by you that uniquely identifies the sender." } } }, - "_links": { + "pointOfSaleInformation": { "type": "object", "properties": { - "self": { + "emv": { "type": "object", "properties": { - "href": { + "tags": { "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." + "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + "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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", + "default": false } } - }, - "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." - } - } + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" } } } } }, "example": { - "id": "5330579740206278601009", - "rootId": "5330571038726320201013", - "reconciliationId": "53703847LK9LPPXY", - "merchantId": "pa_rbsworldpay", - "status": "PENDING", - "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", - "comments": "test comment" - }, - "consumerAuthenticationInformation": { - "eciRaw": "1234", - "cavv": "12345", - "xid": "12345678", - "transactionId": "00152259513040478521" - }, - "deviceInformation": { - "ipAddress": "1.10.10.10", - "hostName": "cybs test", - "cookiesAccepted": "no" - }, - "errorInformation": { - "reason": "1", - "message": "abc", - "details": [ - { - "field": "xyz", - "reason": "1" - } - ] - }, - "installmentInformation": { - "numberOfInstallments": 0 - }, - "fraudMarkingInformation": { - "reason": "suspected" - }, - "merchantDefinedInformation": [ - { - "key": "abc", - "value": "xyz" - } - ], - "merchantInformation": { - "merchantDescriptor": { - "name": "ng_paymentech" - } + "code": "Testing-VDP-Payments-Refund" }, "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" - }, - "shippingDetails": { - "giftWrap": "none", - "shippingMethod": "xyz" + "totalAmount": "102.21", + "currency": "USD" } - }, - "paymentInformation": { - "paymentType": { - "name": "paymentProcessor1234", - "subTypeName": "Credit", - "fundingSource": { - "name": "fundingSource Name", - "type": "Credit Account", - "credential": "Credit Card PAN", - "affiliations": "Visa", - "underwriter": "Chase" - }, - "method": { - "name": "method name", - "operator": "method operator", - "schemeName": "method scheme name", - "schemeOperator": "method scheme operator" - }, - "authenticationMethod": "authentication method" - }, - "customer": { - "customerId": "123" - }, - "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": "SUFF", - "prefix": "PREF", - "checkNumber": "123456", - "type": "check", - "name": "BankAccountName123456789012345", - "checkDigit": "CD", - "encoderId": "AID" + } + } + } + }, + { + "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." + } + } }, - "mandate": { - "referenceNumber": "mandaterefnum1234567", - "recurringType": "direct1234", - "id": "mandateId1" + "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." + } + } } - }, - "accountFeatures": { - "balanceAmount": "3.00", - "previousBalanceAmount": "2.00", - "currency": "usd" } }, - "processingInformation": { - "paymentSolution": "Visa", - "commerceIndicator": "7", - "businessApplicationId": "12345", - "authorizationOptions": { - "authType": "O" - }, - "bankTransferOptions": { - "secCode": "web" - } + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." }, - "processorInformation": { - "processor": { - "name": "paymentProcessor1234" - }, - "transactionId": "processortransactionid123", - "networkTransactionId": "networktransactionid67890", - "responseId": "1212", - "providerTransactionId": "78906", - "approvalCode": "authcode1234567", - "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" + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" }, - "pointOfSaleInformation": { - "entryMode": "posentrymode1234512", - "terminalCapability": "integer" + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n" }, - "riskInformation": { - "profile": { - "name": "abc", - "decision": "xyz" - }, - "rules": [ - { - "name": "abc2", - "decision": "xyz2" - } - ], - "passiveProfile": { - "name": "abc3", - "decision": "xyz3" - }, - "passiveRules": [ - { - "name": "abc4", - "decision": "xyz4" + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } - ], - "localTime": "2018-07-31T17:26:14Z", - "score": { - "factorCodes": [ - "AB" - ], - "result": 10 } }, - "senderInformation": { - "referenceNumber": "senderRefNumber1" + "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 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + }, + "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" + }, + "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.\n\nThis value must be printed on the receipt.\n\nThis field is supported only on **American Express Direct**, **FDC Nashville Global**, and **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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + } + } + } + } }, + "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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\n" + } + } + } + } + } + }, + "example": { "_links": { "self": { - "href": "https://api.visa.com/payment/tss/v2/transactions/5330579740206278601009", + "href": "/pts/v2/refunds/4963014779006178301545", "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" - } - ] + "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" } } } }, - "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" - ], - "operationId": "createSearch", - "x-devcenter-metaData": { - "categoryTag": "Transaction_Search" - }, - "parameters": [ - { - "name": "createSearchRequest", - "in": "body", - "required": true, + "400": { + "description": "Invalid request.", "schema": { "type": "object", + "title": "ptsV2CapturesRefundsPost400Response", "properties": { - "save": { - "type": "boolean", - "description": "save or not save." + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" }, - "name": { + "status": { "type": "string", - "description": "The description for this field is not available.\n" + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" }, - "timezone": { + "reason": { "type": "string", - "description": "Time Zone in ISO format." + "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" }, - "query": { + "message": { "type": "string", - "description": "transaction search query string." + "description": "The detail message related to the status and reason listed above." }, - "offset": { - "type": "integer", - "description": "offset." + "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`\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" }, - "limit": { - "type": "integer", - "description": "Limit on number of results." + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" }, - "sort": { + "reason": { "type": "string", - "description": "A comma separated list of the following form - fieldName1 asc or desc, fieldName2 asc or desc, etc." + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n - INVALID_OR_MISSING_CONFIG\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" }, - "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" + "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" ], - "responses": { - "201": { - "description": "Successful response.", + "operationId": "createCredit", + "x-devcenter-metaData": { + "categoryTag": "Payments" + }, + "parameters": [ + { + "name": "createCreditRequest", + "in": "body", + "required": true, "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": "save or not save." - }, - "name": { - "type": "string", - "description": "The description for this field is not available.\n" - }, - "timezone": { - "type": "string", - "description": "Time Zone in ISO format." - }, - "query": { - "type": "string", - "description": "transaction search query string." - }, - "offset": { - "type": "integer", - "description": "offset." - }, - "limit": { - "type": "integer", - "description": "Limit on number of results." - }, - "sort": { - "type": "string", - "description": "A comma separated list of the following form - fieldName1 asc or desc, fieldName2 asc or desc, etc." - }, - "count": { - "type": "integer", - "description": "Results for this page, this could be below the limit." - }, - "totalCount": { - "type": "integer", - "description": "Total number of results." + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "transactionId": { + "type": "string", + "description": "Identifier that you assign to the transaction.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\nFor details, see \"Merchant-Initiated Reversals and Voids\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 American Express Direct, FDC Nashville Global, and SIX.\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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\n" + } + } + } + } }, - "status": { - "type": "string", - "description": "The status of the submitted transaction." + "processingInformation": { + "type": "object", + "properties": { + "commerceIndicator": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates. When you\nomit this field for **Ingenico ePayments**, the processor uses the default transaction type they have on file\nfor you instead of the default value listed here.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `vc_order_id` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 10, + "description": "Flag that indicates that the transaction includes airline data or restaurant data.\n\nThis field must be set to `airline` in order for airline data to be sent to the processor.\n\nFor example, if this field is not set to airline or is not included in the request, CyberSource does not send airline data to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor.\n\nWhen this field is not set to restaurant or is not included in the request, CyberSource does not send restaurant data to the processor.\n\nPossible Values:\n\n- **airline**\n- **restaurant**\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "purchaseOptions": { + "type": "object", + "properties": { + "isElectronicBenefitsTransfer": { + "type": "boolean", + "description": "Flag that indicates that this transaction is an EBT transaction.Possible values:\n- **true**\n- **false**\n" + } + } + }, + "electronicBenefitsTransfer": { + "type": "object", + "properties": { + "category": { + "type": "string", + "maxLength": 4, + "description": "Flag that specifies the category for the EBT transaction. Possible 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" + } + } + } + } }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" + }, + "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\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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" + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "subTypeName": { + "type": "string", + "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n- `DEBIT` (use this for a PIN debit transaction)\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" + } + } + } + } + } + } }, - "_embedded": { + "orderInformation": { "type": "object", "properties": { - "transactionSummaries": { + "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n\nFor processor-specific information, see the order_discount_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" + }, + "dutyAmount": { + "type": "string", + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n\nFor processor-specific information, see the duty_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" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants when the card is present. 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\nFor information about partial authorizations, see Credit Card Services Using the SCMP API.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" + }, + "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\nFor processor-specific information, see the national_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" + }, + "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\nFor processor-specific information, see the order_discount_management_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" + }, + "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\nFor processor-specific information, see the tax_management_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" + }, + "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\nFor processor-specific information, see the total_tax_type_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" + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "foreignCurrency": { + "type": "string", + "maxLength": 5, + "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 [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific information, see the `exchange_rate` request-level field description in\n[Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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\nFor processor-specific information, see the `exchange_rate_timestamp` 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" + }, + "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\nFor processor-specific information, see the additional_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" + } + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see `original_currency` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nFor details about converting a foreign cardholder\u2019s purchase from your local pricing currency to the cardholder\u2019s billing currency, see the [Dynamic Currency Conversion with a Third Party Provider Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + }, + "cashbackAmount": { + "type": "string", + "maxLength": 13, + "description": "Cashback amount requested by the customer. If a cashback amount is included in the request, it must be included in the orderInformation.amountDetails.totalAmount value.\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#### 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**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_firstname` 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" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + }, + "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.\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": 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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" + }, + "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\nFor processor-specific information, see the `bill_city` 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" + }, + "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\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 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 `bill_state` 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" + }, + "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 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 `bill_zip` 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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + }, + "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" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + } + } + }, + "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\nand Canada.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", + "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\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" + } + } + }, + "lineItems": { "type": "array", - "description": "transaction search summary", "items": { "type": "object", "properties": { - "id": { + "productCode": { "type": "string", - "maxLength": 26, - "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "submitTimeUtc": { + "productName": { "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" }, - "merchantId": { + "productSku": { "type": "string", - "description": "Your CyberSource merchant ID." + "maxLength": 255, + "description": "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" }, - "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\nFor details, see `auth_rcode` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "rFlag": { - "type": "string", - "description": "One-word description of the result of the application.\n\nFor details, see `auth_rflag` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "applications": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The CyberSource payment application processed for the transaction.\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": "string", - "description": "The description for this field is not available." - } - } - } - } - } + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\n", + "default": 1 }, - "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" - } - } + "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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 application name of client which is used to submit the request." - }, - "applicationUser": { - "type": "string", - "description": "The description for this field is not available." - } - } + "unitOfMeasure": { + "type": "string", + "maxLength": 12, + "description": "Unit of measure, or unit of measure code, for the item.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "transactionId": { - "type": "string", - "description": "Payer auth Transaction identifier." - } - } + "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" }, - "deviceInformation": { - "type": "object", - "properties": { - "ipAddress": { - "type": "string", - "maxLength": 48, - "description": "IP address of the customer.\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\nIf you want to include the tax amount and also request the ics_tax service, see Tax Calculation Service Using the SCMP API.\n\nThis field is frequently used for Level II and Level III transactions. For 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor details, see the `marking_reason` field description in [Decision Manager Using the SCMP API Developer Guide.](https://www.cybersource.com/developers/documentation/fraud_management/)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" }, - "merchantDefinedInformation": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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", - "description": "The object containing the custom data that the merchant defines.\n", "items": { "type": "object", "properties": { - "key": { + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_amount` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "rate": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "value": { + "code": { "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - } - } - }, - "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#### 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**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_firstname` 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" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address." - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", - "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - } - }, - "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.\n" - }, - "method": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal" - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the cardholder\u2019s account number. This field is returned only for tokenized transactions.\nYou can use this value on the receipt that you give to the cardholder.\n\n**Note** This field is returned only for CyberSource through VisaNet and FDC Nashville Global.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 85\n- Field: American Express last 4 PAN return indicator.\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" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } + "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/wwhelp/wwhimpl/js/html/wwhelp.htm):\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" } } } - }, - "processingInformation": { + } + } + } + }, + "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": { - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n" - }, - "businessApplicationId": { + "data": { "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" + "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" } } - }, - "processorInformation": { - "type": "object", - "properties": { - "processor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the Processor.\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\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": 48, + "description": "IP address of the customer.\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": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\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\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [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" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 two-character ISO Standard Country Codes.\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\nSee \"Aggregator Support,\" page 101.\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" + } + } + } + } + }, + "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 details, see the `emv_request_combined_tags` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**Note** The information about EMV applies to credit card processing and PIN debit\nprocessing. All other information in this guide applies only to credit card processing. PIN debit\nprocessing is available only on FDC Nashville Global.\n\n**Note** For information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\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 cmcic, amexdirect, fdiglobal, opdfde, 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" + }, + "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\nPossible values:\n - **true**\n - **false** (default)\n\nThis field is supported only on **Chase Paymentech Solutions** and **GPN**.\n", + "default": false + }, + "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**.\n\n**NOTE**: This field is required when an EMV transaction fails for a technical reason. Do not include this field when the EMV terminal does not have any applications in common with the EMV card.\n\nFor details, see the `emv_request_fallback_condition` field description in the [Card-Present Processing Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nPossible values:\n- Y: Transaction was stored and then forwarded.\n- N (default): Transaction was not stored and then forwarded.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" + }, + "cardholderVerificationMethod": { + "type": "array", + "items": { + "type": "string", + "description": "Complete list of cardholder verification methods (CVMs) supported by the terminal.\n\nPossible values:\n- PIN\n- Signature\n\n**NOTE**: You can submit one of the values or both in a request.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" + }, + "example": [ + "PIN", + "Signature" + ] + }, + "terminalInputCapability": { + "type": "array", + "items": { + "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\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n\nFor details, see the `terminal_input_capabilities_#` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n", + "type": "string" + }, + "example": [ + "Keyed", + "Swiped", + "Contact", + "QRcode" + ] + }, + "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\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 details, see the `terminal_serial_number` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nThis field is supported only on American Express Direct.\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 only on American Express Direct.\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 only on American Express Direct and SIX.\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" + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + } + } + }, + "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - PENDING\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "creditAmountDetails": { + "type": "object", + "properties": { + "creditAmount": { + "type": "string", + "maxLength": 15, + "description": "Total amount of the credit." + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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.\n\nThis value must be printed on the receipt.\n\nThis field is supported only on **American Express Direct**, **FDC Nashville Global**, and **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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\n" + } + } + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nprocessor for requirements.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be\na value that FDC Nashville Global issued to you.\n\nFor details, see the `terminal_id` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**For Payouts**: This field is applicable for CtV.\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\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 details, see the `terminal_serial_number` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 specific CyberSource integrations. For details, see the `pos_device_id` field description\nin the [Card-Present Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } + } + }, + "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\nFor processor-specific information, see the `bill_purchasing_level3_enabled` 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\nPossible values:\n- **true**\n- **false**\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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" + }, + "processingInformation": { + "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" + }, + "amountDetails": { + "totalAmount": "100", + "currency": "USD" + } + }, + "paymentInformation": { + "bank": { + "account": { + "number": "4100", + "type": "C", + "checkNumber": "123456" + }, + "routingNumber": "071923284" + } + } + } + }, + "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" + } + } + } + } + } + } + }, + "/pts/v2/payments/{id}/voids": { + "post": { + "summary": "Void a Payment", + "description": "Include the payment ID in the POST request to cancel the payment.", + "tags": [ + "void" + ], + "operationId": "voidPayment", + "x-devcenter-metaData": { + "categoryTag": "Payments" + }, + "parameters": [ + { + "name": "voidPaymentRequest", + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { + "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\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" + }, + "subTypeName": { + "type": "string", + "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n- `DEBIT` (use this for a PIN debit transaction)\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" + } + } + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "test_void" + } + } + } + }, + { + "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - VOIDED\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void." + }, + "originalTransactionAmount": { + "type": "string", + "description": "Amount of the original transaction." + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/voids/4963015122056179201545", + "method": "GET" + } + }, + "id": "4963015122056179201545", + "submitTimeUtc": "2017-06-01T071832Z", + "status": "VOIDED", + "clientReferenceInformation": { + "code": "test_void" + }, + "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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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": "Include the capture ID in the POST request to cancel the capture.", + "tags": [ + "void" + ], + "operationId": "voidCapture", + "x-devcenter-metaData": { + "categoryTag": "Payments" + }, + "parameters": [ + { + "name": "voidCaptureRequest", + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { + "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\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" + }, + "subTypeName": { + "type": "string", + "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n- `DEBIT` (use this for a PIN debit transaction)\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\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 [CyberSource Decision Manager Device Fingerprinting Guide.](https://www.cybersource.com/developers/documentation/fraud_management)\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 _CyberSource Decision Manager Device Fingerprinting 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" - }, - "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" - } - } - } - } - } + } + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "test_void" + } + } + } + }, + { + "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - VOIDED\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void." + }, + "originalTransactionAmount": { + "type": "string", + "description": "Amount of the original transaction." + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/voids/4963015122056179201545", + "method": "GET" + } + }, + "id": "4963015122056179201545", + "submitTimeUtc": "2017-06-01T071832Z", + "status": "VOIDED", + "clientReferenceInformation": { + "code": "test_void" + }, + "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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" + }, + "parameters": [ + { + "name": "voidRefundRequest", + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { + "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\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" + }, + "subTypeName": { + "type": "string", + "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n- `DEBIT` (use this for a PIN debit transaction)\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\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." - } - } - } + } + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "test_void" + } + } + } + }, + { + "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - VOIDED\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void." + }, + "originalTransactionAmount": { + "type": "string", + "description": "Amount of the original transaction." + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/voids/4963015122056179201545", + "method": "GET" + } + }, + "id": "4963015122056179201545", + "submitTimeUtc": "2017-06-01T071832Z", + "status": "VOIDED", + "clientReferenceInformation": { + "code": "test_void" + }, + "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`\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 - 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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" + }, + "parameters": [ + { + "name": "voidCreditRequest", + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { + "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 partner ID of 999 in reports, the partner ID that was submitted is incorrect.\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" + }, + "subTypeName": { + "type": "string", + "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n- `DEBIT` (use this for a PIN debit transaction)\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" } } } } } } + } + }, + "example": { + "clientReferenceInformation": { + "code": "test_void" + } + } + } + }, + { + "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - VOIDED\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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void." + }, + "originalTransactionAmount": { + "type": "string", + "description": "Amount of the original transaction." + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/voids/4963015122056179201545", + "method": "GET" + } + }, + "id": "4963015122056179201545", + "submitTimeUtc": "2017-06-01T071832Z", + "status": "VOIDED", + "clientReferenceInformation": { + "code": "test_void" + }, + "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`\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 - 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`\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" }, - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - } - } + "status": { + "type": "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 - INVALID_OR_MISSING_CONFIG\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": { - "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", - "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" - }, - "consumerAuthenticationInformation": { - "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", - "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" - } + "path": "/pts/v2/credits", + "verb": "post", + "exampleId": "example0" + } + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } + } + }, + "/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" + }, + "x-queryParameterDefaults": { + "startTime": "2019-05-22T01:47:57.000Z", + "endTime": "2019-07-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 }, - "paymentInformation": { - "paymentType": { - "name": "CARD", - "method": { - "name": "method name" - } - }, - "customer": { - "customerId": "12345" - }, - "card": { - "suffix": "1111", - "prefix": "123456", - "type": "001" - } + "uploadDate": { + "type": "string", + "description": "Date when the batch template was update.", + "example": "2018-01-01" }, - "processingInformation": { - "paymentSolution": "xyz", - "businessApplicationId": "12345" + "completionDate": { + "type": "string", + "description": "The date when the batch template processing completed.", + "example": "2018-01-01" }, - "processorInformation": { - "processor": { - "name": "FirstData" - } + "transactionCount": { + "type": "integer", + "description": "Number of transactions in the transaction.", + "example": 7534 }, - "pointOfSaleInformation": { - "terminalId": "1", - "terminalSerialNumber": "123111123", - "deviceId": "asfaf12312313", - "partner": { - "originalTransactionId": "131231414414" - } + "acceptedTransactionCount": { + "type": "integer", + "description": "Number of transactions accepted.", + "example": 50013 }, - "riskInformation": { - "providers": { - "fingerprint": { - "true_ipaddress": "1.101.102.112", - "hash": "tuWmt8Ubw0EAybBF3wrZcEqIcZsLr8YPldTQDUxAg2k=", - "smart_id": "23442fdadfa" - } - } + "rejectedTransactionCount": { + "type": "string", + "description": "Number of transactions rejected.", + "example": 2508 }, - "_links": { - "transactionDetail": { - "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/transactions/5217848115816817001541", - "method": "GET" - } + "status": { + "type": "string", + "description": "The status of you batch template processing.", + "example": "Completed" } } - ] + } }, "_links": { - "self": { - "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/searches/87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", - "method": "GET" + "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`\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" } } } }, "400": { - "description": "Invalid request.", + "description": "Bad Request", "schema": { + "title": "ptsV1TransactionBatchesGet400Response", "type": "object", - "title": "tssV2TransactionsPost400Response", "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`\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 - 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" + } + } + } + }, + "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`\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" } } } }, - "502": { - "description": "Unexpected system error or system timeout.", + "403": { + "description": "No Authenticated", "schema": { - "title": "tssV2TransactionsPost502Response", + "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`\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" + } + } + } + }, + "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" + } + } + } + } + } }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { + "submitTimeUtc": { "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n - INVALID_OR_MISSING_CONFIG\n" + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" + } + } + } + }, + "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." + } + } }, - "message": { + "submitTimeUtc": { "type": "string", - "description": "The detail message related to the status and reason listed above." + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" } } } } - }, - "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}": { + "/pts/v1/transaction-batches/{id}": { "get": { - "summary": "Get Search results", - "description": "Include the Search ID in the GET request to retrieve the search results.", + "summary": "Get individual batch file", + "description": "Provide the search range", "tags": [ - "SearchTransactions" + "TransactionBatches" ], - "operationId": "getSearch", + "operationId": "getTransactionBatchId", "x-devcenter-metaData": { - "categoryTag": "Transaction_Search" + "categoryTag": "Transaction_Batches" + }, + "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": "searchId", + "name": "id", "in": "path", - "description": "Search ID.", + "description": "The batch id assigned for the template.", "required": true, "type": "string" } ], "responses": { "200": { - "description": "Successful response.", + "description": "OK", "schema": { - "type": "object", - "title": "tssV2TransactionsPost201Response", + "title": "ptsV1TransactionBatchesIdGet200Response", "properties": { - "searchId": { - "type": "string", - "maxLength": 60, - "description": "An unique identification number assigned by CyberSource to identify each Search request." - }, - "save": { - "type": "boolean", - "description": "save or not save." - }, - "name": { + "id": { "type": "string", - "description": "The description for this field is not available.\n" + "description": "Unique identifier assigned to the batch file.", + "example": "psy8s1d", + "pattern": "^[a-zA-Z0-9_+-]*$", + "minLength": 1, + "maxLength": 8 }, - "timezone": { + "uploadDate": { "type": "string", - "description": "Time Zone in ISO format." + "description": "Date when the batch template was update.", + "example": "2018-01-01" }, - "query": { + "completionDate": { "type": "string", - "description": "transaction search query string." + "description": "The date when the batch template processing completed.", + "example": "2018-01-01" }, - "offset": { + "transactionCount": { "type": "integer", - "description": "offset." + "description": "Number of transactions in the transaction.", + "example": 7534 }, - "limit": { + "acceptedTransactionCount": { "type": "integer", - "description": "Limit on number of results." + "description": "Number of transactions accepted.", + "example": 50013 }, - "sort": { + "rejectedTransactionCount": { "type": "string", - "description": "A comma separated list of the following form - fieldName1 asc or desc, fieldName2 asc or desc, etc." - }, - "count": { - "type": "integer", - "description": "Results for this page, this could be below the limit." - }, - "totalCount": { - "type": "integer", - "description": "Total number of results." + "description": "Number of transactions rejected.", + "example": 2508 }, "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`\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" + "description": "The status of you batch template processing.", + "example": "Completed" }, - "_embedded": { + "_links": { "type": "object", "properties": { - "transactionSummaries": { + "transactions": { "type": "array", - "description": "transaction search summary", "items": { "type": "object", "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" - }, - "merchantId": { + "href": { "type": "string", - "description": "Your CyberSource merchant ID." - }, - "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\nFor details, see `auth_rcode` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "rFlag": { - "type": "string", - "description": "One-word description of the result of the application.\n\nFor details, see `auth_rflag` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "applications": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The CyberSource payment application processed for the transaction.\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": "string", - "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": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 application name of client which is used to submit the request." - }, - "applicationUser": { - "type": "string", - "description": "The description for this field is not available." - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - }, - "transactionId": { - "type": "string", - "description": "Payer auth Transaction identifier." - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "ipAddress": { - "type": "string", - "maxLength": 48, - "description": "IP address of the customer.\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\nFor details, see the `marking_reason` field description in [Decision Manager Using the SCMP API Developer Guide.](https://www.cybersource.com/developers/documentation/fraud_management/)\n" - } - } + "description": "Self link for this request", + "example": "/tss/v2/transactions/5289798134206292501013" }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } + "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" }, - "merchantInformation": { - "type": "object", - "properties": { - "resellerId": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." - } - } + "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`\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" + } + } + } + }, + "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" }, - "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#### 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**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_firstname` 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" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address." - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", - "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - } + "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`\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" + } + } + } + }, + "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" }, - "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.\n" - }, - "method": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal" - } - } - }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the cardholder\u2019s account number. This field is returned only for tokenized transactions.\nYou can use this value on the receipt that you give to the cardholder.\n\n**Note** This field is returned only for CyberSource through VisaNet and FDC Nashville Global.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 85\n- Field: American Express last 4 PAN return indicator.\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" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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`\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" + } + } + } + }, + "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`\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" + } + } + } + }, + "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`\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" + } + } + } + } + } + } + }, + "/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 \nthat you previously uploaded in the Business Center or processed with \nthe Offline Transaction File Submission service.\n", + "operationId": "getTransactionBatchDetails", + "x-devcenter-metaData": { + "categoryTag": "Transaction_Batches", + "isClientSideApi": true + }, + "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" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The batch id assigned for the template.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "examples": { + "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" }, - "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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" - } - } + "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`\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" + } + } + } + }, + "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" }, - "processorInformation": { - "type": "object", - "properties": { - "processor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the Processor.\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`\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" + } + } + } + }, + "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" }, - "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\nprocessor for requirements.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be\na value that FDC Nashville Global issued to you.\n\nFor details, see the `terminal_id` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**For Payouts**: This field is applicable for CtV.\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\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 details, see the `terminal_serial_number` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 specific CyberSource integrations. For details, see the `pos_device_id` field description\nin the [Card-Present Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" - } - } - } - } + "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`\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" + } + } + } + }, + "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" }, - "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 [CyberSource Decision Manager Device Fingerprinting Guide.](https://www.cybersource.com/developers/documentation/fraud_management)\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 _CyberSource Decision Manager Device Fingerprinting 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" - }, - "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" - } - } - } - } - } + "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`\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" + } + } + } + }, + "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`\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" + } + } + } + } + } + } + }, + "/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\nan 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": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + }, + "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor processor-specific information, see the surcharge_amount field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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#### 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**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_firstname` 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" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + }, + "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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + }, + "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\nFor processor-specific information, see the `bill_city` 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" + }, + "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\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 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 `bill_state` 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" + }, + "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 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 `bill_zip` 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" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + }, + "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" + } + } + } + } + }, + "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\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": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" + }, + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "The state where the merchant is located.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_state` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\nMerchant State. For the descriptions, used-by information, data types, and lengths for these fields, see Merchant Descriptors\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_postal_code` 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" + } + } + } + } + }, + "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" + }, + "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" + }, + "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.\n" + }, + "countryCode": { + "type": "string", + "maxLength": 2, + "description": "Country of sender. Use the ISO Standard Country Codes.\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" + } + } + }, + "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\nSee https://developer.visa.com/request_response_codes#network_id_and_sharing_group_code , under section 'Network ID and Sharing Group Code' on the left panel for available values\n" + }, + "commerceIndicator": { + "type": "string", + "maxLength": 13, + "description": "Type of transaction.\n\nSome payment card companies use this information when determining discount rates. 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 here.\n\nFor details, see the `e_commerce_indicator` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\nPossible value for Payouts:\n- internet\n\n#### Ingenico ePayments\nIngenico ePayments was previously called _Global Collect_.\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### Other Types of Transactions\nFor details, see \"Commerce Indicators\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" + }, + "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\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } + } + } + }, + "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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, + "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" + }, + "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." }, - "_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." - } - } - } - } + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" } } } } } }, - "_links": { + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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\nFor details about how this field is used for Recurring Billing or Payment Tokenization, see the `ecp_debit_owner_merchant_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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "properties": { + "name": { + "type": "string", + "description": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" + }, + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_city` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_country` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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.\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.\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**.\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\nFor details, see `receipt_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": { - "self": { + "card": { "type": "object", "properties": { - "href": { + "balance": { "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." + "maxLength": 12, + "description": "This field shows the available balance in the prepaid account. \nAcquirers always receive the available balance in the transaction currency.\n" }, - "method": { + "currency": { "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + "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" } } } } } }, - "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", - "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" - }, - "consumerAuthenticationInformation": { - "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", - "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" - } - }, - "processingInformation": { - "paymentSolution": "xyz", - "businessApplicationId": "12345" - }, - "processorInformation": { - "processor": { - "name": "FirstData" - } - }, - "pointOfSaleInformation": { - "terminalId": "1", - "terminalSerialNumber": "123111123", - "deviceId": "asfaf12312313", - "partner": { - "originalTransactionId": "131231414414" - } - }, - "riskInformation": { - "providers": { - "fingerprint": { - "true_ipaddress": "1.101.102.112", - "hash": "tuWmt8Ubw0EAybBF3wrZcEqIcZsLr8YPldTQDUxAg2k=", - "smart_id": "23442fdadfa" - } - } + "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 - DEBIT_CARD_USEAGE_EXCEEDD_LIMIT\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." }, - "_links": { - "transactionDetail": { - "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/transactions/5217848115816817001541", - "method": "GET" - } + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" } } - ] - }, - "_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." + "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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" + } + } } } } @@ -23687,7 +12679,7 @@ }, { "in": "body", - "name": "requestBody", + "name": "createAdhocReportRequest", "description": "Report subscription request payload", "required": true, "schema": { @@ -24384,6 +13376,20 @@ "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" @@ -25165,7 +14171,7 @@ }, { "in": "body", - "name": "requestBody", + "name": "createReportSubscriptionRequest", "description": "Report subscription request payload", "required": true, "schema": { @@ -25850,2299 +14856,14215 @@ "VelocityMorphing.InfoCode", "WhitepagesProFields.EmailDomainCreationDate" ], - "reportMimeType": "application/xml", - "reportFrequency": "WEEKLY", - "reportName": "testrest_subcription_v1", - "timezone": "GMT", - "startTime": "0900", - "startDay": "1" + "reportMimeType": "application/xml", + "reportFrequency": "WEEKLY", + "reportName": "testrest_subcription_v1", + "timezone": "GMT", + "startTime": "0900", + "startDay": "1" + } + } + } + } + }, + "/reporting/v3/report-subscriptions/{reportName}": { + "get": { + "tags": [ + "ReportSubscriptions" + ], + "summary": "Get subscription for report name", + "description": "View the details of a report subscription, such as\nthe report format or report frequency, using the report\u2019s\nunique 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": "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\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", + "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": [ + "ReportSubscriptions" + ], + "summary": "Delete subscription of a report name by organization", + "description": "Delete a report subscription for your\norganization. You must know the unique name of the report\nyou 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": "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/notification-of-changes": { + "get": { + "tags": [ + "NotificationOfChanges" + ], + "summary": "Get Notification Of Changes", + "description": "Download the Notification of Change report. This\nreport shows eCheck-related fields updated as a result of a\nresponse to an eCheck settlement transaction.\n", + "operationId": "getNotificationOfChangeReport", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "x-queryParameterDefaults": { + "startTime": "2019-09-01T12:00:00-05:00", + "endTime": "2019-09-10T12:00:00-05:00" + }, + "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.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": [ + "PurchaseAndRefundDetails" + ], + "summary": "Get Purchase and Refund details", + "description": "Download the Purchase and Refund Details\nreport. This report report includes all purchases and refund\ntransactions, as well as all activities related to transactions\nresulting in an adjustment to the net proceeds.\n", + "operationId": "getPurchaseAndRefundDetails", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2018-05-01T12:00:00-05:00", + "endTime": "2018-05-30T12:00:00-05:00", + "groupName": "groupName", + "paymentSubtype": "VI", + "viewBy": "requestDate", + "offset": "20", + "limit": "2000" + }, + "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.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 Cybersource 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": [ + "PaymentBatchSummaries" + ], + "summary": "Get payment batch summary data", + "description": "Scope can be either account/merchant or reseller.", + "operationId": "getPaymentBatchSummary", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "isClientSideApi": true + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2019-05-01T12:00:00-05:00", + "endTime": "2019-08-30T12:00:00-05:00" + }, + "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.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 Cybersource 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": [ + "ConversionDetails" + ], + "summary": "Get conversion detail transactions", + "description": "Get conversion detail of transactions for a merchant.", + "operationId": "getConversionDetail", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "x-queryParameterDefaults": { + "startTime": "2019-03-21T00:00:00.0Z", + "endTime": "2019-03-21T23:00:00.0Z", + "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 Cybersource 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": [ + "NetFundings" + ], + "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" + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2019-08-01T00:00:00.000Z", + "endTime": "2019-09-01T23:59:59.999Z" + }, + "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 Cybersource 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" + } + } + } + } + } + }, + "/dtds/{reportDefinitionNameVersion}": { + "get": { + "tags": [ + "DownloadDTD" + ], + "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" + } + } + } + }, + "/xsds/{reportDefinitionNameVersion}": { + "get": { + "tags": [ + "DownloadXSD" + ], + "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" + } + } + } + }, + "/risk/v1/decisions": { + "post": { + "summary": "Create Decision Manager Case", + "description": "This is the combined request to the Decision Manager Service for a transaction sent to Cybersource.\nDecision Manager will return a decision based on the request values.\n", + "operationId": "createDecisionManagerCase", + "tags": [ + "decision manager" + ], + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "x-devcenter-metaData": { + "categoryTag": "Decision_Manager", + "sendDisabled": 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": "createDecisionManagerCaseRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "required": [ + "orderInformation", + "clientReferenceInformation" + ], + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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." + } + } + }, + "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." + } + } + } + } + }, + "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 knows as the Primary Account Nunmber (PAN). You can also use this field\nfor encoded account numbers.\n\nFor processor-specific information, see the `customer_cc_number` 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" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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`.\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" + } + } + }, + "tokenizedCard": { + "type": "object", + "description": "Use this object to submit a payment network token instead of card-based values.", + "properties": { + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](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" + }, + "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" + } + } + } + } + }, + "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 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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", + "description": "Contains recipient shipping information.", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address." + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second 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\nand Canada.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", + "maxLength": 2 + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address." + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\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\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" + } + } + }, + "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": { + "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 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**Important** Some processors have specific requirements and limitations, such as maximum\namounts and maximum field lengths. See these guides for details:\n- [Merchant Descriptors Using the SCMP API Guide]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n- \"Capture Information for Specific Processors\" section in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. For details, see \"Dynamic Currency Conversion with a Third Party\nProvider\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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. See \"Zero Amount Authorizations\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "description": "Number of units for this order.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when _orderInformation.lineItems[].productCode_ is not set to **default** or one of the other values that are related to shipping and/or handling.\n\nWhen orderInformation.lineItems[].productCode is \"gift_card\",\nthis is the total count of individual prepaid gift cards purchased.\n", + "default": 1 + }, + "productSKU": { + "type": "string", + "maxLength": 255, + "description": "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" + }, + "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 set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not set to `default` or one of\nthe other values that are related to shipping and/or handling.\n" + }, + "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**.\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than default or any of the values related to\nshipping and handling, then the fields `quantity`, `productName`, and `productSku` are required.\nIt can also have a value of \"gift_card\".\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "gift": { + "type": "boolean", + "description": "Determines 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.", + "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.](http://apps.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." + } + } + } + } + } + }, + "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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" + }, + "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\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 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 `bill_state` 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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + }, + "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\nFor processor-specific information, see the `bill_city` 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" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\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**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_firstname` 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" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + }, + "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" + }, + "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 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 `bill_zip` 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" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "description": "Contains information about the buyer.", + "properties": { + "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 Developer Guide Using the SCMP API.](https://www.cybersource.com/developers/documentation/fraud_management/)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\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.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": 48, + "description": "IP address of the customer.\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" + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + }, + "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.](https://www.cybersource.com/developers/documentation/fraud_management/)\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.](https://www.cybersource.com/developers/documentation/fraud_management/)\n" + }, + "departureDateTime": { + "type": "string", + "maxLength": 25, + "description": "Departure date and time for the each 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\nWhere:\\\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\nairline is based in city A, but the flight departs from city\nB, `z` is the time zone of city B at the time of departure.\\\n**Important** For travel information, use GMT instead of UTC, or use the local time zone.\n\n#### Examples\n\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\\\n\n**Note** 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" + } + } + } + } + } + }, + "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": "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" + }, + "submitTimeLocal": { + "type": "string", + "description": "Time that the transaction was submitted in local time." + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - `ACCEPTED`\n - `REJECTED`\n - `PENDING_REVIEW`\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\nFor all possible values, see the `decision_velocity_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", + "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\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", + "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\nFor all possible values, see the `score_hotlist_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", + "items": { + "type": "string" + } + }, + "identityChange": { + "type": "array", + "description": "Indicates excessive identity changes. The threshold is variable depending on the identity elements being\ncompared. This field can contain one or more information codes, separated by carets (^).\n\nFor all possible values, see the `score_identity_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", + "items": { + "type": "string" + } + }, + "internet": { + "type": "array", + "description": "Indicates a problem with the customer\u2019s email address, IP address, or billing address.\n\nFor all possible values, see the `score_internet_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", + "items": { + "type": "string" + } + }, + "phone": { + "type": "array", + "description": "Indicates a problem with the customer\u2019s phone number.\n\nFor all possible values, see the `score_phone_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", + "items": { + "type": "string" + } + }, + "suspicious": { + "type": "array", + "description": "Indicates that the customer provided potentially suspicious information.\n\nFor all possible values, see the `score_suspicious_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", + "items": { + "type": "string" + } + }, + "globalVelocity": { + "type": "array", + "description": "Indicates that the customer has a high purchase frequency.\n\nFor all possible values, see the `score_velocity_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", + "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\nFor all possible values, see the `decision_velocity_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", + "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\nFor all possible values, see the `decision_velocity_morphing_#_count` 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" + }, + "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** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\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" + } + } + }, + "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" + } + } + }, + "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" + }, + "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`\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 - INVALID_REQUEST\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_MERCHANT_CONFIGURATION\n - PROCESSOR_UNAVAILABLE\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "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`\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 - 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 - INVALID_OR_MISSING_CONFIG\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" + }, + "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" + }, + "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" + } + }, + "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": "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": "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" + } + } + } + } + }, + "/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" + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startDate": "2018-10-20", + "endDate": "2018-10-30" + }, + "produces": [ + "application/hal+json" + ], + "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 + } + ], + "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": "integer", + "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-devcenter-metaData": { + "categoryTag": "Secure_File_Share" + }, + "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" + ], + "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" + } + } + } + }, + "/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": true, + "type": "string", + "minLength": 36, + "maxLength": 36 + }, + { + "name": "createInstrumentIdentifierRequest", + "in": "body", + "description": "Please specify either a Card, Bank Account or Enrollable Card", + "required": true, + "schema": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "enrollable card", + "description": "Type of Card" + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "4622943127013705", + "minLength": 12, + "maxLength": 19, + "description": "Credit card number (PAN)." + }, + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Card expiration month.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Card expiration year.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "securityCode": { + "type": "string", + "example": "838", + "minLength": 3, + "maxLength": 4, + "description": "Card security code." + } + } + }, + "BankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "billTo": { + "type": "object", + "properties": { + "address1": { + "type": "string", + "example": "8310 Capital of Texas Highway North", + "description": "First address line registered with card." + }, + "address2": { + "type": "string", + "example": "Bluffstone Drive", + "description": "Second address line registered with card." + }, + "locality": { + "type": "string", + "example": "Austin", + "description": "Locality registered with card." + }, + "administrativeArea": { + "type": "string", + "example": "TX", + "description": "Administrative area registered with card." + }, + "postalCode": { + "type": "string", + "example": "78731", + "description": "Postal code registered with card." + }, + "country": { + "type": "string", + "example": "US", + "description": "Country registered with card." + } + } + } + } + } + } + ], + "tags": [ + "Instrument Identifier" + ], + "operationId": "createInstrumentIdentifier", + "x-devcenter-metaData": { + "categoryTag": "Token_Management" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "responses": { + "200": { + "description": "An existing Instrument Identifier containing the same data has already been returned.", + "headers": { + "Location": { + "description": "Link to the Instrument Identifier.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1InstrumentIdentifiersPost200Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + }, + "examples": { + "application/json": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + }, + "paymentInstruments": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" + }, + "id": "1234567890123456789", + "object": "instrumentIdentifier", + "state": "ACTIVE", + "card": { + "number": "444444XXXXXX4444" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "merchantInitiatedTransaction": { + "previousTransactionId": "123456789012345" + } + } + } + }, + "metadata": { + "creator": "user" + } + } + } + }, + "201": { + "description": "A new Instrument Identifier has been created.", + "headers": { + "Location": { + "description": "Link to the Instrument Identifier.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1InstrumentIdentifiersPost201Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + }, + "examples": { + "application/json": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + }, + "paymentInstruments": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" + } + }, + "id": "1234567890123456789", + "object": "instrumentIdentifier", + "state": "ACTIVE", + "card": { + "number": "444444XXXXXX4444" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "merchantInitiatedTransaction": { + "previousTransactionId": "123456789012345" + } + } + } + }, + "metadata": { + "creator": "user" + } + } + } + }, + "400": { + "description": "Bad Request. A required header value could be missing.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1BadRequest400Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "Missing Headers": { + "errors": [ + { + "type": "missingHeaders", + "message": "Missing header values." + } + ] + } + } + }, + "403": { + "description": "Forbidden. The profile might not have permission to perform the token operation.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1Forbidden403Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "forbidden", + "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": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1FailedDependency424Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "title": "tmsV1Error500Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Create Instrument Identifier (Card)", + "value": { + "card": { + "number": "411111111111112" + } + } + }, + "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": "4622943127013705", + "expirationMonth": "12", + "expirationYear": "2022", + "securityCode": "838" + }, + "billTo": { + "address1": "8310 Capital of Texas Highway North", + "address2": "Bluffstone Drive", + "locality": "Austin", + "administrativeArea": "TX", + "postalCode": "78731", + "country": "US" + } + } + } + } + } + }, + "/tms/v1/instrumentidentifiers/{tokenId}": { + "get": { + "summary": "Retrieve an Instrument Identifier", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": true, + "type": "string", + "minLength": 36, + "maxLength": 36 + }, + { + "name": "tokenId", + "in": "path", + "description": "The TokenId of an Instrument Identifier.", + "required": true, + "type": "string", + "minLength": 16, + "maxLength": 32 + } + ], + "tags": [ + "Instrument Identifier" + ], + "operationId": "getInstrumentIdentifier", + "x-devcenter-metaData": { + "categoryTag": "Token_Management" + }, + "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": "tokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "An existing Instrument Identifier associated with the supplied `tokenId` has been returned.", + "headers": { + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1InstrumentIdentifiersGet200Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + }, + "examples": { + "application/json": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + }, + "paymentInstruments": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" + } + }, + "id": "1234567890123456789", + "object": "instrumentIdentifier", + "state": "ACTIVE", + "card": { + "number": "444444XXXXXX4444" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "merchantInitiatedTransaction": { + "previousTransactionId": "123456789012345" + } + } + } + }, + "metadata": { + "creator": "user" + } + } + } + }, + "400": { + "description": "Bad Request. A required header value could be missing.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1BadRequest400Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "Missing Headers": { + "errors": [ + { + "type": "missingHeaders", + "message": "Missing header values." + } + ] + } + } + }, + "403": { + "description": "Forbidden. The profile might not have permission to perform the token operation.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1Forbidden403Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "forbidden", + "message": "Request not permitted." + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotFound404Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotAvailable410Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw 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": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1FailedDependency424Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "title": "tmsV1Error500Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + } + } + } + }, + "patch": { + "summary": "Update a Instrument Identifier", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": true, + "type": "string", + "minLength": 36, + "maxLength": 36 + }, + { + "name": "tokenId", + "in": "path", + "description": "The TokenId of an Instrument Identifier.", + "required": true, + "type": "string", + "minLength": 16, + "maxLength": 32 + }, + { + "name": "updateInstrumentIdentifierRequest", + "in": "body", + "description": "Specify the previous transaction ID to update.", + "required": true, + "schema": { + "type": "object", + "properties": { + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + } + } + } + } + ], + "tags": [ + "Instrument Identifier" + ], + "operationId": "updateInstrumentIdentifier", + "x-devcenter-metaData": { + "categoryTag": "Token_Management" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "responses": { + "200": { + "description": "The updated Instrument Identifier has been returned.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1InstrumentIdentifiersPatch200Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + }, + "examples": { + "application/json": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/58FEBAEFD2EEFCE1E0539399D30A7500" + } + }, + "id": "58FEBAEFD2EEFCE1E0539399D30A7500", + "object": "instrumentIdentifier", + "state": "ACTIVE", + "card": { + "number": "424242XXXXXX4242" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "merchantInitiatedTransaction": { + "previousTransactionId": 123456789012345 + } + } + } + }, + "metadata": { + "creator": "user" + } + } + } + }, + "400": { + "description": "Bad Request. A required header value could be missing.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1InstrumentIdentifiersPatch400Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "Missing Headers": { + "errors": [ + { + "type": "missingHeaders", + "message": "Missing header values." + } + ] + }, + "Invalid Parameters": { + "errors": [ + { + "type": "invalidParameters", + "message": "Invalid parameter values.", + "details": [ + { + "name": "id" + } + ] + } + ] + }, + "Unknown Field": { + "errors": [ + { + "type": "unknownField", + "message": "Unknown body values.", + "details": [ + { + "name": "id" + } + ] + } + ] + }, + "Unsupported Fields": { + "errors": [ + { + "type": "unsupportedFields", + "message": "Unsupported body values for this action.", + "details": [ + { + "name": "bankAccount" + }, + { + "name": "card" + } + ] + } + ] + } + } + }, + "403": { + "description": "Forbidden. The profile might not have permission to perform the token operation.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1Forbidden403Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "forbidden", + "message": "Request not permitted." + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotFound404Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotAvailable410Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw 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": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1FailedDependency424Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "title": "tmsV1Error500Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + } + } + } + }, + "delete": { + "summary": "Delete an Instrument Identifier", + "tags": [ + "Instrument Identifier" + ], + "operationId": "deleteInstrumentIdentifier", + "x-devcenter-metaData": { + "categoryTag": "Token_Management" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": true, + "type": "string", + "minLength": 36, + "maxLength": 36 + }, + { + "name": "tokenId", + "in": "path", + "description": "The TokenId of an Instrument Identifier.", + "required": true, + "type": "string", + "minLength": 16, + "maxLength": 32 + } + ], + "x-depends": { + "example": { + "path": "/tms/v1/instrumentidentifiers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "tokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "204": { + "description": "An existing Instrument Identifier associated with the supplied `tokenId` has been deleted.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "403": { + "description": "Forbidden. The profile might not have permission to perform the token operation.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1Forbidden403Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "forbidden", + "message": "Request not permitted." + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotFound404Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "409": { + "description": "Conflict. The token is linked to a Payment Instrument.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1InstrumentIdentifiersDelete409Response", + "type": "array", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "paymentInstruments": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" + } + } + } + } + } + }, + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "_links": { + "paymentInstruments": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/7010000000001621111/paymentinstruments" + } + }, + "errors": [ + { + "type": "instrumentIdentifierDeletionError", + "message": "Action cannot be performed. The Instrument Identifier is associated with one or more Payment Instruments." + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotAvailable410Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw 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": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1FailedDependency424Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "title": "tmsV1Error500Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + } + } + } + } + }, + "/tms/v1/instrumentidentifiers/{tokenId}/paymentinstruments": { + "get": { + "summary": "Retrieve all Payment Instruments", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": true, + "type": "string", + "minLength": 36, + "maxLength": 36 + }, + { + "name": "tokenId", + "in": "path", + "description": "The TokenId of an Instrument Identifier.", + "required": true, + "type": "string", + "minLength": 16, + "maxLength": 32 + }, + { + "name": "offset", + "in": "query", + "description": "Starting Payment Instrument 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 of Payment Instruments 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": "getAllPaymentInstruments", + "x-devcenter-metaData": { + "categoryTag": "Token_Management" + }, + "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": "tokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an array of Payment Instruments associated with the supplied Instrument Identifier.", + "headers": { + "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 Instrument Identifier in the zero-based dataset.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "A link to the current requested collection.", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=20&limit=5\"" + } + } + }, + "first": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "A link to the collection starting at offset zero for the supplied limit.", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=0&limit=5" + } + } + }, + "prev": { + "type": "object", + "description": "A link to the previous collection starting at the supplied offset minus the supplied limit.", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=15&limit=5" + } + } + }, + "next": { + "type": "object", + "properties": { + "href": { + "description": "A link to the next collection starting at the supplied offset plus the supplied limit.", + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=25&limit=5" + } + } + }, + "last": { + "type": "object", + "properties": { + "href": { + "description": "A link to the last collection containing the remaining objects.", + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=35&limit=5" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "collection", + "description": "'Shows the response is a collection of objects.'\n\nValid values:\n- collection\n" + }, + "offset": { + "type": "string", + "readOnly": true, + "example": "20", + "description": "The offset parameter supplied in the request." + }, + "limit": { + "type": "string", + "readOnly": true, + "example": "1", + "description": "The limit parameter supplied in the request." + }, + "count": { + "type": "string", + "readOnly": true, + "example": "1", + "description": "The number of Payment Instruments returned in the array." + }, + "total": { + "type": "string", + "readOnly": true, + "example": "39", + "description": "The total number of Payment Instruments associated with the Instrument Identifier in the zero-based dataset." + }, + "_embedded": { + "type": "object", + "properties": { + "paymentInstruments": { + "description": "Array of Payment Instruments returned for the supplied Instrument Identifier.", + "type": "array", + "items": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" + } + } + }, + "card": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + }, + "type": { + "type": "string", + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + }, + "issueNumber": { + "type": "string", + "example": "01", + "minLength": 1, + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + }, + "startMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "startYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + }, + "currency": { + "type": "string", + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + }, + "dateOBirth": { + "type": "string", + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "lastName": { + "type": "string", + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "company": { + "type": "string", + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + } + } + } + } + }, + "metaData": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=20&limit=1" + }, + "first": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=0&limit=1" + }, + "prev": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=19&limit=1" + }, + "next": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=21&limit=1\"" + }, + "last": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=38&limit=1" + } + }, + "object": "collection", + "offset": 20, + "limit": 1, + "count": 1, + "total": 39, + "_embedded": { + "paymentInstruments": [ + { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/paymentinstruments/6036673B73B12F19E0539399D30A2566" + } + }, + "id": "6036673B73B12F19E0539399D30A2566", + "object": "paymentInstrument", + "state": "ACTIVE", + "card": { + "expirationMonth": "09", + "expirationYear": "2027", + "type": "visa", + "issueNumber": "01", + "startMonth": "01", + "startYear": "2017" + }, + "buyerInformation": { + "companyTaxId": "12345", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Smith", + "company": "CyberSource", + "address1": "1 My Apartment", + "address2": "Main Street", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "90211", + "country": "US", + "email": "john.smith@test.com", + "phoneNumber": "+44 2890447777" + }, + "processingInformation": { + "billPaymentProgramEnabled": true + }, + "metadata": { + "creator": "user" + }, + "_embedded": { + "instrumentIdentifier": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1" + } + }, + "id": "5B32CE6167B09343E05333B9D30A53E1", + "object": "instrumentIdentifier", + "state": "ACTIVE", + "card": { + "number": "424242XXXXXX1237" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "merchantInitiatedTransaction": { + "previousTransactionId": "123456789012345" + } + } + } + }, + "metadata": { + "creator": "user" + } + } + } + } + ] + } + } + } + }, + "400": { + "description": "Bad Request. A required header value could be missing.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1BadRequest400Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "Missing Headers": { + "errors": [ + { + "type": "missingHeaders", + "message": "Missing header values." + } + ] + } + } + }, + "403": { + "description": "Forbidden. The profile might not have permission to perform the token operation.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1Forbidden403Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "forbidden", + "message": "Request not permitted." + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotFound404Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotAvailable410Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw 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": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1FailedDependency424Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "title": "tmsV1Error500Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + } + } + } + } + }, + "/tms/v1/paymentinstruments": { + "post": { + "summary": "Create a Payment Instrument", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": true, + "type": "string", + "minLength": 36, + "maxLength": 36 + }, + { + "name": "createPaymentInstrumentRequest", + "in": "body", + "description": "Specify the customer's payment details for card or bank account.", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" + } + } + }, + "card": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + }, + "type": { + "type": "string", + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + }, + "issueNumber": { + "type": "string", + "example": "01", + "minLength": 1, + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + }, + "startMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "startYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + }, + "currency": { + "type": "string", + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + }, + "dateOBirth": { + "type": "string", + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "lastName": { + "type": "string", + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "company": { + "type": "string", + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + } + } + } + } + }, + "metaData": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + } + } + } + } + ], + "tags": [ + "Payment Instrument" + ], + "operationId": "createPaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "responses": { + "201": { + "description": "A new Payment Instrument has been created.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1PaymentInstrumentsPost201Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" + } + } + }, + "card": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + }, + "type": { + "type": "string", + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + }, + "issueNumber": { + "type": "string", + "example": "01", + "minLength": 1, + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + }, + "startMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "startYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + }, + "currency": { + "type": "string", + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + }, + "dateOBirth": { + "type": "string", + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "lastName": { + "type": "string", + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "company": { + "type": "string", + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + } + } + } + } + }, + "metaData": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/paymentinstruments/5910683634E6B035E0539399D30A4B46" + } + }, + "id": "5910683634E6B035E0539399D30A4B46", + "object": "paymentInstrument", + "state": "ACTIVE", + "card": { + "expirationMonth": 11, + "expirationYear": 2020, + "type": "visa", + "issueNumber": 1, + "startMonth": 12, + "startYear": 2017 + }, + "buyerInformation": { + "companyTaxID": 12345, + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Smith", + "company": "Cybersource", + "address1": "1 My Apartment", + "address2": "20 My Street", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": 90210, + "country": "US", + "email": "ohn.smith@test.com", + "phoneNumber": "+44 289044795" + }, + "processingInformation": { + "billPaymentProgramEnabled": true + }, + "metadata": { + "creator": "user" + }, + "_embedded": { + "instrumentIdentifier": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/58FEBAEFD2EEFCE1E0539399D30A7500" + } + }, + "id": "58FEBAEFD2EEFCE1E0539399D30A7500", + "object": "instrumentIdentifier", + "state": "ACTIVE", + "card": { + "number": "424242XXXXXX4242" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "merchantInitiatedTransaction": { + "previousTransactionId": 123456789012345 + } + } + } + }, + "metadata": { + "creator": "user" + } + } + } + } + } + }, + "400": { + "description": "Bad Request. A required header value could be missing.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1PaymentInstruments400Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "Missing Headers": { + "errors": [ + { + "type": "missingHeaders", + "message": "Missing header values." + } + ] + }, + "Payment Instrument cannot be linked to instrument identifier because it does not exist": { + "errors": [ + { + "type": "instrumentIdentifierNotFound", + "message": "Action cannot be performed. The `InstrumentIdentifier` is not found" + } + ] + }, + "Payment Instrument cannot be linked to instrument identifier because it has been deleted": { + "errors": [ + { + "type": "instrumentIdentifierGone", + "message": "Action cannot be performed. The `InstrumentIdentifier` is gone." + } + ] + }, + "Payment Instrument cannot be linked to instrument identifier due to a token type mismatch": { + "errors": [ + { + "type": "invalidCombination", + "message": "The combination is invalid.", + "details": [ + { + "name": "bankAccount" + }, + { + "name": "card", + "location": "instrumentIdentifier" + } + ] + } + ] + }, + "Payment Instrument cannot be created due to invalid combination of Instrument Identifier fields": { + "errors": [ + { + "type": "invalidCombination", + "message": "The combination is invalid.", + "details": [ + { + "name": "id", + "location": "instrumentIdentifier" + }, + { + "name": "card", + "location": "instrumentIdentifier" + } + ] + } + ] + } + } + }, + "403": { + "description": "Forbidden. The profile might not have permission to perform the token operation.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1Forbidden403Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "forbidden", + "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": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1FailedDependency424Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "title": "tmsV1Error500Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Create Payment Instrument (Card)", + "value": { + "card": { + "expirationMonth": "09", + "expirationYear": "2017", + "type": "visa", + "issueNumber": "01", + "startMonth": "01", + "startYear": "2016" + }, + "buyerInformation": { + "companyTaxID": "12345", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Smith", + "company": "Cybersource", + "address1": "8310 Capital of Texas Highwas North", + "address2": "Bluffstone Drive", + "locality": "Austin", + "administrativeArea": "TX", + "postalCode": "78731", + "country": "US", + "email": "john.smith@test.com", + "phoneNumber": "+44 2890447951" + }, + "processingInformation": { + "billPaymentProgramEnabled": true + }, + "instrumentIdentifier": { + "card": { + "number": "411111111111112" + } + } + } + }, + "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": "Smith", + "company": "Cybersource", + "address1": "8310 Capital of Texas Highwas North", + "address2": "Bluffstone Drive", + "locality": "Austin", + "administrativeArea": "TX", + "postalCode": "78731", + "country": "US", + "email": "john.smith@test.com", + "phoneNumber": "+44 2890447951" + }, + "processingInformation": { + "billPaymentProgramEnabled": true, + "bankTransferOptions": { + "SECCode": "WEB" + } + }, + "merchantInformation": { + "merchantDescriptor": { + "alternateName": "Branch Name" + } + }, + "instrumentIdentifier": { + "bankAccount": { + "number": "4100", + "routingNumber": "071923284" + } + } + } + }, + "example2": { + "summary": "Create Payment Instrument (Pinless Debit)", + "value": { + "card": { + "expirationMonth": "09", + "expirationYear": "2017", + "type": "visa", + "issueNumber": "01", + "startMonth": "01", + "startYear": "2016", + "useAs": "pinless debit" + }, + "buyerInformation": { + "companyTaxID": "12345", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Smith", + "company": "Cybersource", + "address1": "8310 Capital of Texas Highwas North", + "address2": "Bluffstone Drive", + "locality": "Austin", + "administrativeArea": "TX", + "postalCode": "78731", + "country": "US", + "email": "john.smith@test.com", + "phoneNumber": "+44 2890447951" + }, + "processingInformation": { + "billPaymentProgramEnabled": true + }, + "instrumentIdentifier": { + "card": { + "number": "411111111111112" + } + } + } + }, + "example3": { + "summary": "Create Payment Instrument (Card with Instrument Identifier Id)", + "value": { + "card": { + "expirationMonth": "09", + "expirationYear": "2017", + "type": "visa", + "issueNumber": "01", + "startMonth": "01", + "startYear": "2016" + }, + "buyerInformation": { + "companyTaxID": "12345", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Smith", + "company": "Cybersource", + "address1": "8310 Capital of Texas Highwas North", + "address2": "Bluffstone Drive", + "locality": "Austin", + "administrativeArea": "TX", + "postalCode": "78731", + "country": "US", + "email": "john.smith@test.com", + "phoneNumber": "+44 2890447951" + }, + "processingInformation": { + "billPaymentProgramEnabled": true + }, + "instrumentIdentifier": { + "id": "9000000000000000001003" + } + }, + "depends": { + "example": { + "path": "/tms/v1/instrumentidentifiers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "instrumentIdentifier.id", + "fieldTypeInDestination": "body" + } + ] + } + }, + "example4": { + "summary": "Create Payment Instrument (Tokenized Card)", + "value": { + "card": { + "expirationMonth": "09", + "expirationYear": "2017", + "type": "visa", + "issueNumber": "01", + "startMonth": "01", + "startYear": "2016", + "tokenizedInformation": { + "requestorID": "payment_network_token_requestor_id", + "transactionType": "payment_network_token_transaction_type" + } + }, + "buyerInformation": { + "companyTaxID": "12345", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Smith", + "company": "Cybersource", + "address1": "8310 Capital of Texas Highwas North", + "address2": "Bluffstone Drive", + "locality": "Austin", + "administrativeArea": "TX", + "postalCode": "78731", + "country": "US", + "email": "john.smith@test.com", + "phoneNumber": "+44 2890447951" + }, + "processingInformation": { + "billPaymentProgramEnabled": true + }, + "instrumentIdentifier": { + "card": { + "number": "411111111111112" + } + } + } + }, + "example5": { + "summary": "Create Payment Instrument (Card & Enroll for Network Token)", + "value": { + "card": { + "expirationMonth": "09", + "expirationYear": "2017", + "type": "visa", + "issueNumber": "01", + "startMonth": "01", + "startYear": "2016" + }, + "buyerInformation": { + "companyTaxID": "12345", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Smith", + "company": "Cybersource", + "address1": "8310 Capital of Texas Highwas North", + "address2": "Bluffstone Drive", + "locality": "Austin", + "administrativeArea": "TX", + "postalCode": "78731", + "country": "US", + "email": "john.smith@test.com", + "phoneNumber": "+44 2890447951" + }, + "processingInformation": { + "billPaymentProgramEnabled": true + }, + "instrumentIdentifier": { + "type": "enrollable card", + "card": { + "number": "4622943127013705", + "expirationMonth": "12", + "expirationYear": "2022", + "securityCode": "838" + }, + "billTo": { + "address1": "8310 Capital of Texas Highway North", + "address2": "Bluffstone Drive", + "locality": "Austin", + "administrativeArea": "TX", + "postalCode": "78731", + "country": "US" + } + } + } + } + } + } + }, + "/tms/v1/paymentinstruments/{tokenId}": { + "patch": { + "summary": "Update a Payment Instrument", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": true, + "type": "string", + "minLength": 36, + "maxLength": 36 + }, + { + "name": "tokenId", + "in": "path", + "description": "The TokenId of a Payment Instrument.", + "required": true, + "type": "string", + "minLength": 16, + "maxLength": 32 + }, + { + "name": "updatePaymentInstrumentRequest", + "in": "body", + "description": "Specify the customer's payment details.", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" + } + } + }, + "card": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + }, + "type": { + "type": "string", + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + }, + "issueNumber": { + "type": "string", + "example": "01", + "minLength": 1, + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + }, + "startMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "startYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + }, + "currency": { + "type": "string", + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + }, + "dateOBirth": { + "type": "string", + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "lastName": { + "type": "string", + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "company": { + "type": "string", + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + } + } + } + } + }, + "metaData": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + } + } + } + } + ], + "tags": [ + "Payment Instrument" + ], + "operationId": "updatePaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "responses": { + "200": { + "description": "The updated Payment Instrument has been returned.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1PaymentinstrumentsPatch200Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" + } + } + }, + "card": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + }, + "type": { + "type": "string", + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + }, + "issueNumber": { + "type": "string", + "example": "01", + "minLength": 1, + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + }, + "startMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "startYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + }, + "currency": { + "type": "string", + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + }, + "dateOBirth": { + "type": "string", + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "lastName": { + "type": "string", + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "company": { + "type": "string", + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + } + } + } + } + }, + "metaData": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/paymentinstruments/5910683634E6B035E0539399D30A4B46" + } + }, + "id": "5910683634E6B035E0539399D30A4B46", + "object": "paymentInstrument", + "state": "ACTIVE", + "card": { + "expirationMonth": 11, + "expirationYear": 2020, + "type": "visa", + "issueNumber": 1, + "startMonth": 12, + "startYear": 2017 + }, + "buyerInformation": { + "companyTaxID": 12345, + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Smith", + "company": "Cybersource", + "address1": "1 My Apartment", + "address2": "20 My Street", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": 90210, + "country": "US", + "email": "ohn.smith@test.com", + "phoneNumber": "+44 289044795" + }, + "processingInformation": { + "billPaymentProgramEnabled": true + }, + "metadata": { + "creator": "user" + }, + "_embedded": { + "instrumentIdentifier": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/58FEBAEFD2EEFCE1E0539399D30A7500" + } + }, + "id": "58FEBAEFD2EEFCE1E0539399D30A7500", + "object": "instrumentIdentifier", + "state": "ACTIVE", + "card": { + "number": "424242XXXXXX4242" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "merchantInitiatedTransaction": { + "previousTransactionId": 123456789012345 + } + } + } + }, + "metadata": { + "creator": "user" + } + } + } + } + } + }, + "400": { + "description": "Bad Request. A required header value could be missing.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1PaymentInstruments400Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "Missing Headers": { + "errors": [ + { + "type": "missingHeaders", + "message": "Missing header values." + } + ] + }, + "Payment Instrument cannot be linked to instrument identifier because it does not exist": { + "errors": [ + { + "type": "instrumentIdentifierNotFound", + "message": "Action cannot be performed. The `InstrumentIdentifier` is not found" + } + ] + }, + "Payment Instrument cannot be linked to instrument identifier because it has been deleted": { + "errors": [ + { + "type": "instrumentIdentifierGone", + "message": "Action cannot be performed. The `InstrumentIdentifier` is gone." + } + ] + }, + "Payment Instrument cannot be linked to instrument identifier due to a token type mismatch": { + "errors": [ + { + "type": "invalidCombination", + "message": "The combination is invalid.", + "details": [ + { + "name": "bankAccount" + }, + { + "name": "card", + "location": "instrumentIdentifier" + } + ] + } + ] + }, + "Payment Instrument cannot be created due to invalid combination of Instrument Identifier fields": { + "errors": [ + { + "type": "invalidCombination", + "message": "The combination is invalid.", + "details": [ + { + "name": "id", + "location": "instrumentIdentifier" + }, + { + "name": "card", + "location": "instrumentIdentifier" + } + ] + } + ] + } + } + }, + "403": { + "description": "Forbidden. The profile might not have permission to perform the token operation.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1Forbidden403Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "forbidden", + "message": "Request not permitted." + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotFound404Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotAvailable410Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw 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": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1FailedDependency424Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "title": "tmsV1Error500Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + } + } + } + }, + "get": { + "summary": "Retrieve a Payment Instrument", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": true, + "type": "string", + "minLength": 36, + "maxLength": 36 + }, + { + "name": "tokenId", + "in": "path", + "description": "The TokenId of a Payment Instrument.", + "required": true, + "type": "string", + "minLength": 16, + "maxLength": 32 + } + ], + "tags": [ + "Payment Instrument" + ], + "operationId": "getPaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management" + }, + "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": "tokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "An existing Payment Instrument associated with the supplied `tokenId` has been returned.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1PaymentinstrumentsPatch200Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" + } + } + }, + "card": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + }, + "type": { + "type": "string", + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + }, + "issueNumber": { + "type": "string", + "example": "01", + "minLength": 1, + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + }, + "startMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "startYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + }, + "currency": { + "type": "string", + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + }, + "dateOBirth": { + "type": "string", + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "lastName": { + "type": "string", + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "company": { + "type": "string", + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + } + } + } + } + }, + "metaData": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/paymentinstruments/5910683634E6B035E0539399D30A4B46" + } + }, + "id": "5910683634E6B035E0539399D30A4B46", + "object": "paymentInstrument", + "state": "ACTIVE", + "card": { + "expirationMonth": 11, + "expirationYear": 2020, + "type": "visa", + "issueNumber": 1, + "startMonth": 12, + "startYear": 2017 + }, + "buyerInformation": { + "companyTaxID": 12345, + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Smith", + "company": "Cybersource", + "address1": "1 My Apartment", + "address2": "20 My Street", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": 90210, + "country": "US", + "email": "ohn.smith@test.com", + "phoneNumber": "+44 289044795" + }, + "processingInformation": { + "billPaymentProgramEnabled": true + }, + "metadata": { + "creator": "user" + }, + "_embedded": { + "instrumentIdentifier": { + "_links": { + "self": { + "href": "https://api.cybersource.com/tms/v1/instrumentidentifiers/58FEBAEFD2EEFCE1E0539399D30A7500" + } + }, + "id": "58FEBAEFD2EEFCE1E0539399D30A7500", + "object": "instrumentIdentifier", + "state": "ACTIVE", + "card": { + "number": "424242XXXXXX4242" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "merchantInitiatedTransaction": { + "previousTransactionId": 123456789012345 + } + } + } + }, + "metadata": { + "creator": "user" + } + } + } + } + } + }, + "400": { + "description": "Bad Request. A required header value could be missing.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1BadRequest400Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "Missing Headers": { + "errors": [ + { + "type": "missingHeaders", + "message": "Missing header values." + } + ] + } + } + }, + "403": { + "description": "Forbidden. The profile might not have permission to perform the token operation.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1Forbidden403Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "forbidden", + "message": "Request not permitted." + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotFound404Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotAvailable410Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw 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": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1FailedDependency424Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "title": "tmsV1Error500Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + } + } + } + }, + "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": true, + "type": "string", + "minLength": 36, + "maxLength": 36 + }, + { + "name": "tokenId", + "in": "path", + "description": "The TokenId of a Payment Instrument.", + "required": true, + "type": "string", + "minLength": 16, + "maxLength": 32 + } + ], + "operationId": "deletePaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management" + }, + "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": "tokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "204": { + "description": "An existing Payment Instrument associated with the supplied `tokenId` has been deleted.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "403": { + "description": "Forbidden. The profile might not have permission to perform the token operation.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1Forbidden403Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "forbidden", + "message": "Request not permitted." + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotFound404Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1TokenNotAvailable410Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw 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": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "tmsV1FailedDependency424Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "title": "tmsV1Error500Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + } + } + } } } } } }, - "/reporting/v3/report-subscriptions/{reportName}": { + "/tss/v2/transactions/{id}": { "get": { + "summary": "Retrieve a Transaction", + "description": "Include the Request ID in the GET request to retrieve the transaction details.", "tags": [ - "ReportSubscriptions" + "TransactionDetails" ], - "summary": "Get subscription for report name", - "description": "View the details of a report subscription, such as\nthe report format or report frequency, using the report\u2019s\nunique name.\n", - "operationId": "getSubscription", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, "produces": [ - "application/hal+json" + "application/hal+json;charset=utf-8" ], + "operationId": "getTransaction", + "x-devcenter-metaData": { + "categoryTag": "Transaction_Details" + }, "parameters": [ { - "name": "reportName", + "name": "id", "in": "path", - "description": "Name of the Report to Retrieve", - "required": true, - "type": "string", - "maxLength": 80, - "minLength": 1, - "pattern": "[a-zA-Z0-9-_+]+" + "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": "Ok", + "description": "Successful response.", "schema": { - "title": "reportingV3ReportsSbscriptionsNameGet200Response", + "title": "tssV2TransactionsGet200Response", "type": "object", "properties": { - "organizationId": { - "type": "string", - "description": "Selected Organization Id", - "example": "Merchant 1" - }, - "reportDefinitionId": { + "id": { "type": "string", - "description": "Report Definition Id", - "example": "210" + "maxLength": 26, + "description": "An unique identification number assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." }, - "reportDefinitionName": { + "rootId": { "type": "string", - "description": "Report Definition Class", - "example": "TransactionRequestDetailClass" + "maxLength": 26, + "description": "Payment Request Id" }, - "reportMimeType": { + "reconciliationId": { "type": "string", - "example": "application/xml", - "description": "Report Format \n \nValid values:\n- application/xml\n- text/csv\n" + "maxLength": 60, + "description": "The reconciliation id for the submitted transaction. This value is not returned for all processors.\n" }, - "reportFrequency": { + "merchantId": { "type": "string", - "example": "DAILY", - "description": "'Report Frequency'\n\nValid values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- ADHOC\n" + "description": "Your CyberSource merchant ID." }, - "reportName": { + "status": { "type": "string", - "description": "Report Name", - "example": "My Transaction Request Detail Report" + "description": "The status of the submitted transaction." }, - "timezone": { + "submitTimeUTC": { "type": "string", - "description": "Time Zone", - "example": "America/Chicago" + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" }, - "startTime": { - "type": "string", - "description": "Start Time", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00" + "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\nFor details, see `auth_rcode` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "rFlag": { + "type": "string", + "description": "One-word description of the result of the application.\n\nFor details, see `auth_rflag` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "applications": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The CyberSource payment application processed for the transaction.\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": "string", + "description": "The description for this field is not available." + } + } + } + } + } }, - "startDay": { - "type": "integer", - "format": "int32", - "description": "Start Day", - "example": 1 + "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 Developer Guide Using the SCMP API.](https://www.cybersource.com/developers/documentation/fraud_management/)\n" + } + } }, - "reportFields": { - "type": "array", - "example": [ - "Request.RequestID", - "Request.TransactionDate", - "Request.MerchantID" - ], - "description": "List of all fields String values", - "items": { - "type": "string" + "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 for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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": "The description for this field is not available." + }, + "applicationName": { + "type": "string", + "description": "The application name of client which is used to submit the request." + }, + "applicationUser": { + "type": "string", + "description": "The description for this field is not available." + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order." + } } }, - "reportFilters": { + "consumerAuthenticationInformation": { "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "transactionId": { + "type": "string", + "description": "Payer auth Transaction identifier." } - }, - "description": "List of filters to apply", - "example": { - "Application.Name": [ - "ics_auth", - "ics_bill" - ] } }, - "reportPreferences": { + "deviceInformation": { "type": "object", - "description": "Report Preferences", "properties": { - "signedAmounts": { - "type": "boolean", - "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" + "ipAddress": { + "type": "string", + "maxLength": 48, + "description": "IP address of the customer.\n" }, - "fieldNameConvention": { + "hostName": { "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" + "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" } } }, - "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" + "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" + } + } + } + } + } }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" + "installmentInformation": { + "type": "object", + "properties": { + "numberOfInstallments": { + "type": "string", + "description": "Number of Installments." + } + } }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" + "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\nFor details, see the `marking_reason` field description in [Decision Manager Using the SCMP API Developer Guide.](https://www.cybersource.com/developers/documentation/fraud_management/)\n" + } + } }, - "details": { + "merchantDefinedInformation": { "type": "array", - "description": "Error field list\n", + "description": "The object containing the custom data that the merchant defines.\n", "items": { "type": "object", "properties": { - "field": { + "key": { "type": "string", - "description": "Field in request that caused an error\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "reason": { + "value": { "type": "string", - "description": "Documented reason code\n" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" } - }, - "description": "Provides failed validation input field detail\n" + } } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "Subscription not found" - } - } - }, - "delete": { - "tags": [ - "ReportSubscriptions" - ], - "summary": "Delete subscription of a report name by organization", - "description": "Delete a report subscription for your\norganization. You must know the unique name of the report\nyou want to delete.\n", - "operationId": "deleteSubscription", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "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" + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Merchant's name.\n\nFor more details about the merchant-related fields, see the `merchant_descriptor` field description in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n" + } + } + } + } }, - "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" + "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#### 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**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_firstname` 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" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + }, + "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 billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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: This 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\nFor processor-specific information, see the `bill_address1` 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" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### CyberSource through VisaNet\n**Important** When you populate billing street address 1 and billing street address 2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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 `bill_address2` 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" + }, + "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\nFor processor-specific information, see the `bill_city` 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" + }, + "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\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 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 `bill_state` 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" + }, + "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 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 `bill_zip` 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" + }, + "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.\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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + }, + "title": { + "type": "string", + "maxLength": 60, + "description": "Title.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address." + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address." + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address." + }, + "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\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 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 `bill_state` 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" + }, + "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" + }, + "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.", + "maxLength": 2 + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address." + } } }, - "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" + "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 API, 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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." + } + } } }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - } - } - } - }, - "/reporting/v3/notification-of-changes": { - "get": { - "tags": [ - "NotificationOfChanges" - ], - "summary": "Get Notification Of Changes", - "description": "Download the Notification of Change report. This\nreport shows eCheck-related fields updated as a result of a\nresponse to an eCheck settlement transaction.\n", - "operationId": "getNotificationOfChangeReport", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "x-queryParameterDefaults": { - "startTime": "2018-05-01T12:00:00-05:00", - "endTime": "2018-05-30T12:00:00-05:00" - }, - "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.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" + "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n\nFor processor-specific information, see the total_tax_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" + }, + "authorizedAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount that was authorized.\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.\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.\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" + } } - }, - "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" + "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" + }, + "subTypeName": { + "type": "string", + "description": "SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n- `DEBIT` (use this for a PIN debit transaction)\n" + }, + "fundingSource": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type Funding Source is the Financial Account which holds the financial assets used to fund a transaction initiated with a given Payment Type. Examples: Bank of America Debit, Wells Consumer Checking\n" + }, + "type": { + "type": "string", + "description": "It is type of funding source. Examples: US Checking Account, Credit Account, Stored Value Account\n" + }, + "credential": { + "type": "string", + "description": "It is the credential of the funding source. Examples: Credit Card PAN, Checking Account Number\n" + }, + "affiliations": { + "type": "string", + "description": "It is affiliation of funding source such as Visa, Master Card, ACH.\n" + }, + "underwriter": { + "type": "string", + "description": "It is underwrite for the given funding source. Examples: Bank of America, Wells Fargo, PayPal\n" + } + } + }, + "method": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal" + }, + "authenticationMethod": { + "type": "string", + "description": "A Payment Type Authentication Method is the means used to verify that the presenter of the Payment Type credential is an authorized user of the Payment Instrument.\nExamples: 3DSecure \u2013 Verified by Visa, 3DSecure \u2013 MasteCard Secure 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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + "card": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the cardholder\u2019s account number. This field is returned only for tokenized transactions.\nYou can use this value on the receipt that you give to the cardholder.\n\n**Note** This field is returned only for CyberSource through VisaNet and FDC Nashville Global.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 85\n- Field: American Express last 4 PAN return indicator.\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" + }, + "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\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 (_type_=039), if there is no expiration date on the card, use `12`.\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_cc_expmo` 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" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit 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#### 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**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_cc_expyr` 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" + }, + "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\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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." + } } }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - } - } - } - }, - "/reporting/v3/purchase-refund-details": { - "get": { - "tags": [ - "PurchaseAndRefundDetails" - ], - "summary": "Get Purchase and Refund details", - "description": "Download the Purchase and Refund Details\nreport. This report report includes all purchases and refund\ntransactions, as well as all activities related to transactions\nresulting in an adjustment to the net proceeds.\n", - "operationId": "getPurchaseAndRefundDetails", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2018-05-01T12:00:00-05:00", - "endTime": "2018-05-30T12:00:00-05:00", - "groupName": "groupName", - "paymentSubtype": "VI", - "viewBy": "requestDate", - "offset": "20", - "limit": "2000" - }, - "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.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 Cybersource 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" + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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", + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } + } + }, + "accountFeatures": { + "type": "object", + "properties": { + "balanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\n" + }, + "previousBalanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\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\nFor details, see `auth_account_balance_currency` 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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n" }, - "description": "Request Info Section" + "commerceIndicator": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates. When you\nomit this field for **Ingenico ePayments**, the processor uses the default transaction type they have on file\nfor you instead of the default value listed here.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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\nFor more information, see \"Forced Captures\" in [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm).\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\nFor processor-specific information, see the `auth_type` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } } }, - "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" + "processorInformation": { + "type": "object", + "properties": { + "processor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of 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\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "networkTransactionId": { + "type": "string", + "description": "The description for this field is not available." + }, + "responseId": { + "type": "string", + "description": "Response ID sent from the processor.\n" + }, + "providerTransactionId": { + "type": "string", + "description": "The description for this field is not available." + }, + "approvalCode": { + "type": "string", + "description": "Authorization code. Returned only when the processor returns this value.\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#### 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\nresponse code received from the processor\nseparated by a colon.\nFormat: [status code]:E[error code] or\n[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 `responseCategoryCode` field.\n" + }, + "avs": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 1, + "description": "AVS result code.\n" + }, + "codeRaw": { + "type": "string", + "maxLength": 10, + "description": "AVS result code sent directly from the processor. Returned only when the processor returns this value.\nImportant Do not use this field to evaluate the result of AVS. Use for debugging purposes only.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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**.\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\nFor details, see `receipt_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" } } }, - "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" - } + "pointOfSaleInformation": { + "type": "object", + "properties": { + "entryMode": { + "type": "string", + "maxLength": 11, + "description": "Method of entering credit 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.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD).\n - `swiped`: Read from credit card magnetic stripe.\n\nThe contact, contactless, and msd values are supported only for EMV transactions.\n\nFor details, see the `pos_entry_mode` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" }, - "description": "Authorization Info Values" + "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.\n\nThe values of 4 and 5 are supported only for EMV transactions.\n* Applicable only for CTV for Payouts.\n\nFor processor-specific details, see the `terminal_capability` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } } }, - "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)" + "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" + } } }, - "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" + "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" + } } }, - "description": "Other Merchant Details Values." + "localTime": { + "type": "string", + "description": "Time that the transaction was submitted in local time." + } } }, - "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." + "senderInformation": { + "type": "object", + "properties": { + "referenceNumber": { + "type": "string", + "maxLength": 19, + "description": "Reference number generated by you that uniquely identifies the sender." + } } - } - }, - "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" + "_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." + } } }, - "description": "Provides failed validation input field detail\n" + "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." + } + } + } + } } } }, - "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" + "example": { + "id": "5330579740206278601009", + "rootId": "5330571038726320201013", + "reconciliationId": "53703847LK9LPPXY", + "merchantId": "pa_rbsworldpay", + "status": "PENDING", + "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" + } + ] }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" + "buyerInformation": { + "merchantCustomerId": "123456", + "hashedPassword": "fhjfhj" }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" + "clientReferenceInformation": { + "code": "ECERT001", + "applicationVersion": "1.0", + "applicationName": "SCMP API", + "applicationUser": "ng_paymentech", + "comments": "test comment" }, - "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" + "consumerAuthenticationInformation": { + "eciRaw": "1234", + "cavv": "12345", + "xid": "12345678", + "transactionId": "00152259513040478521" }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" + "deviceInformation": { + "ipAddress": "1.10.10.10", + "hostName": "cybs test", + "cookiesAccepted": "no" }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" + "errorInformation": { + "reason": "1", + "message": "abc", + "details": [ + { + "field": "xyz", + "reason": "1" + } + ] + }, + "installmentInformation": { + "numberOfInstallments": 0 + }, + "fraudMarkingInformation": { + "reason": "suspected" }, - "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" + "merchantDefinedInformation": [ + { + "key": "abc", + "value": "xyz" + } + ], + "merchantInformation": { + "merchantDescriptor": { + "name": "ng_paymentech" } - } - }, - "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" + "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" + }, + "shippingDetails": { + "giftWrap": "none", + "shippingMethod": "xyz" + } }, - "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" - } + "paymentInformation": { + "paymentType": { + "name": "paymentProcessor1234", + "subTypeName": "Credit", + "fundingSource": { + "name": "fundingSource Name", + "type": "Credit Account", + "credential": "Credit Card PAN", + "affiliations": "Visa", + "underwriter": "Chase" }, - "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": [ - "PaymentBatchSummaries" - ], - "summary": "Get payment batch summary data", - "description": "Scope can be either account/merchant or reseller.", - "operationId": "getPaymentBatchSummary", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "isClientSideApi": true - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2019-05-01T12:00:00-05:00", - "endTime": "2019-08-30T12:00:00-05:00" - }, - "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.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 Cybersource 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" + "method": { + "name": "method name", + "operator": "method operator", + "schemeName": "method scheme name", + "schemeOperator": "method scheme operator" + }, + "authenticationMethod": "authentication method" + }, + "customer": { + "customerId": "123" + }, + "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": "SUFF", + "prefix": "PREF", + "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" + } }, - "endTime": { - "type": "string", - "format": "date-time" + "processingInformation": { + "paymentSolution": "Visa", + "commerceIndicator": "7", + "businessApplicationId": "12345", + "authorizationOptions": { + "authType": "O" + }, + "bankTransferOptions": { + "secCode": "web" + } }, - "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" - } + "processorInformation": { + "processor": { + "name": "paymentProcessor1234" + }, + "transactionId": "processortransactionid123", + "networkTransactionId": "networktransactionid67890", + "responseId": "1212", + "providerTransactionId": "78906", + "approvalCode": "authcode1234567", + "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" + }, + "pointOfSaleInformation": { + "entryMode": "posentrymode1234512", + "terminalCapability": "integer" + }, + "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 } - } - } - } - }, - "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" + "senderInformation": { + "referenceNumber": "senderRefNumber1" }, - "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" - } + "_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" }, - "description": "Provides failed validation input field detail\n" - } + { + "href": "https://api.visa.com/payment/tss/v2/transactions/5330579740206278601011", + "method": "GET" + } + ] } - }, - "description": "HTTP status code for client application" + } } }, "404": { - "description": "Payment Batch Summary not found" + "description": "The specified resource not found in the system." + }, + "500": { + "description": "Unexpected server error" } } } }, - "/reporting/v3/conversion-details": { - "get": { + "/tss/v2/searches": { + "post": { + "summary": "Create a search request", + "description": "Create a search request.\n", "tags": [ - "ConversionDetails" - ], - "summary": "Get conversion detail transactions", - "description": "Get conversion detail of transactions for a merchant.", - "operationId": "getConversionDetail", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "x-queryParameterDefaults": { - "startTime": "2019-03-21T00:00:00.0Z", - "endTime": "2019-03-21T23:00:00.0Z", - "organizationId": "testrest" - }, + "SearchTransactions" + ], "produces": [ - "application/hal+json", - "application/xml" + "application/json;charset=utf-8" ], + "operationId": "createSearch", + "x-devcenter-metaData": { + "categoryTag": "Transaction_Search" + }, "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", + "name": "createSearchRequest", + "in": "body", "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Cybersource Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 + "schema": { + "type": "object", + "properties": { + "save": { + "type": "boolean", + "description": "save or not save." + }, + "name": { + "type": "string", + "description": "The description for this field is not available.\n" + }, + "timezone": { + "type": "string", + "description": "Time Zone in ISO format." + }, + "query": { + "type": "string", + "description": "transaction search query string." + }, + "offset": { + "type": "integer", + "description": "offset." + }, + "limit": { + "type": "integer", + "description": "Limit on number of results." + }, + "sort": { + "type": "string", + "description": "A comma separated list of the following form - fieldName1 asc or desc, fieldName2 asc or desc, etc." + } + }, + "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": { - "200": { - "description": "OK", + "201": { + "description": "Successful response.", "schema": { - "title": "reportingV3ConversionDetailsGet200Response", "type": "object", + "title": "tssV2TransactionsPost201Response", "properties": { - "organizationId": { + "searchId": { "type": "string", - "description": "Merchant Id", - "example": "testMerchantId", - "xml": { - "name": "MerchantID", - "attribute": true - } + "maxLength": 60, + "description": "An unique identification number assigned by CyberSource to identify each Search request." }, - "startTime": { + "save": { + "type": "boolean", + "description": "save or not save." + }, + "name": { "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00", - "xml": { - "name": "ReportStartDate", - "attribute": true - } + "description": "The description for this field is not available.\n" }, - "endTime": { + "timezone": { "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00", - "xml": { - "name": "ReportEndDate", - "attribute": true - } + "description": "Time Zone in ISO format." }, - "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 + "query": { + "type": "string", + "description": "transaction search query string." + }, + "offset": { + "type": "integer", + "description": "offset." + }, + "limit": { + "type": "integer", + "description": "Limit on number of results." + }, + "sort": { + "type": "string", + "description": "A comma separated list of the following form - fieldName1 asc or desc, fieldName2 asc or desc, etc." + }, + "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`\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" + }, + "_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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" + }, + "merchantId": { + "type": "string", + "description": "Your CyberSource merchant ID." + }, + "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\nFor details, see `auth_rcode` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "rFlag": { + "type": "string", + "description": "One-word description of the result of the application.\n\nFor details, see `auth_rflag` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "applications": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The CyberSource payment application processed for the transaction.\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": "string", + "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": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 application name of client which is used to submit the request." + }, + "applicationUser": { + "type": "string", + "description": "The description for this field is not available." + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "transactionId": { + "type": "string", + "description": "Payer auth Transaction identifier." + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "maxLength": 48, + "description": "IP address of the customer.\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\nFor details, see the `marking_reason` field description in [Decision Manager Using the SCMP API Developer Guide.](https://www.cybersource.com/developers/documentation/fraud_management/)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + } + } + }, + "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#### 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**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_firstname` 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" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address." + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", + "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + } + } + }, + "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" + }, + "method": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal" + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the cardholder\u2019s account number. This field is returned only for tokenized transactions.\nYou can use this value on the receipt that you give to the cardholder.\n\n**Note** This field is returned only for CyberSource through VisaNet and FDC Nashville Global.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 85\n- Field: American Express last 4 PAN return indicator.\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" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } } - }, - "addedBy": { - "type": "string", - "description": "Note added by reviewer", - "example": "testuserId", - "xml": { - "name": "AddedBy", - "attribute": true + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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" } - }, - "comments": { - "type": "string", - "description": "Comments given by the reviewer", - "example": "Verified the order and accepted.", - "xml": { - "name": "Comment", - "attribute": true + } + }, + "processorInformation": { + "type": "object", + "properties": { + "processor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the Processor.\n" + } + } } } }, - "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": [ - "NetFundings" - ], - "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" - }, - "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 Cybersource 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 + "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\nprocessor for requirements.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be\na value that FDC Nashville Global issued to you.\n\nFor details, see the `terminal_id` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**For Payouts**: This field is applicable for CtV.\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\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 details, see the `terminal_serial_number` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 specific CyberSource integrations. For details, see the `pos_device_id` field description\nin the [Card-Present Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 [CyberSource Decision Manager Device Fingerprinting Guide.](https://www.cybersource.com/developers/documentation/fraud_management)\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 _CyberSource Decision Manager Device Fingerprinting 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" + }, + "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." + } + } + } + } + } + } + } + } } }, - "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 + "_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." + } + } + } } - }, - "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" + } + }, + "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", + "applications": [ + { + "name": "ics_service_fee_calculate", + "status": "TRANSMITTED", + "reasonCode": "123", + "rCode": "1", + "rFlag": "SOK", + "reconciliationId": "55557", + "rMessage": "Request was processed successfully", + "returnCode": "1040000" + } + ] }, - "conveyedCount": { - "type": "integer", - "example": 10 + "buyerInformation": { + "merchantCustomerId": "123456" }, - "conveyedAmount": { - "type": "string", - "example": "100.50" + "clientReferenceInformation": { + "code": "12345", + "applicationName": "Service Fee Request", + "applicationUser": "sandeep_wf" }, - "settledCount": { - "type": "integer", - "example": 10 + "consumerAuthenticationInformation": { + "xid": "12345678", + "transactionId": "00152259513040478521" }, - "fundedCount": { - "type": "integer", - "example": 10 + "deviceInformation": { + "ipAddress": "1.10.10.10" }, - "fundedAmount": { - "type": "string", - "example": "150.50" + "fraudMarkingInformation": { + "reason": "fraud txn" }, - "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" + "merchantDefinedInformation": [ + { + "key": "abc", + "value": "xyz" + } + ], + "merchantInformation": { + "resellerId": "wfbmcp" }, - "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" + "orderInformation": { + "billTo": { + "firstName": "Test", + "lastName": "TSS", + "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" + } }, - "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" + "paymentInformation": { + "paymentType": { + "name": "CARD", + "method": { + "name": "method name" + } + }, + "customer": { + "customerId": "12345" + }, + "card": { + "suffix": "1111", + "prefix": "123456", + "type": "001" + } }, - "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" + "processingInformation": { + "paymentSolution": "xyz", + "businessApplicationId": "12345" }, - "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" + "processorInformation": { + "processor": { + "name": "FirstData" + } }, - "value": { - "type": "string", - "example": "10.01" + "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" + } } - }, - "xml": { - "name": "Amount" } - }, - "xml": { - "name": "netTotal", - "wrapped": true + ] + }, + "_links": { + "self": { + "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/searches/87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", + "method": "GET" } } } } }, "400": { - "description": "Invalid request", + "description": "Invalid request.", "schema": { - "title": "reportingV3NetFundingsGet400Response", "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], + "title": "tssV2TransactionsPost400Response", "properties": { "submitTimeUtc": { "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" }, - "reason": { + "status": { "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" }, "message": { "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" + "description": "The detail message related to the status and reason listed above." }, "details": { "type": "array", - "description": "Error field list\n", "items": { "type": "object", "properties": { "field": { "type": "string", - "description": "Field in request that caused an error\n" + "description": "This is the flattened JSON object field name/path that is either missing or invalid." }, "reason": { "type": "string", - "description": "Documented reason code\n" + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\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", + "502": { + "description": "Unexpected system error or system timeout.", "schema": { - "title": "reportingV3NetFundingsGet500Response", + "title": "tssV2TransactionsPost502Response", "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" + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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 - SERVER_ERROR\n" }, "reason": { "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n - INVALID_OR_MISSING_CONFIG\n" }, "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": "The detail message related to the status and reason listed above." } - }, - "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" } } } - } - } - }, - "/dtds/{reportDefinitionNameVersion}": { - "get": { - "tags": [ - "DownloadDTD" - ], - "summary": "Used to download DTDs for reports", - "description": "Downloads 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" + "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" + } } } } }, - "/xsds/{reportDefinitionNameVersion}": { + "/tss/v2/searches/{searchId}": { "get": { + "summary": "Get Search results", + "description": "Include the Search ID in the GET request to retrieve the search results.", "tags": [ - "DownloadXSD" + "SearchTransactions" ], - "summary": "Used to download XSDs for reports", - "description": "Downloads XSDs for reports on no-auth.", - "operationId": "getXSDV2", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "isClientSideApi": true - }, "produces": [ - "text/xml" + "*/*" ], + "operationId": "getSearch", + "x-devcenter-metaData": { + "categoryTag": "Transaction_Search" + }, "parameters": [ { - "name": "reportDefinitionNameVersion", + "name": "searchId", "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", + "description": "Search ID.", "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" - } - } - } - }, - "/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" - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startDate": "2018-10-20", - "endDate": "2018-10-30" + "x-depends": { + "example": { + "path": "/tss/v2/searches", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "searchId", + "destinationField": "searchId", + "fieldTypeInDestination": "path" + } + ] }, - "produces": [ - "application/hal+json" - ], - "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 - } - ], "responses": { "200": { - "description": "Ok", + "description": "Successful response.", "schema": { - "title": "V1FileDetailsGet200Response", "type": "object", + "title": "tssV2TransactionsPost201Response", "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": "integer", - "description": "Size of the file in bytes", - "example": 2245397 + "searchId": { + "type": "string", + "maxLength": 60, + "description": "An unique identification number assigned by CyberSource to identify each Search request." + }, + "save": { + "type": "boolean", + "description": "save or not save." + }, + "name": { + "type": "string", + "description": "The description for this field is not available.\n" + }, + "timezone": { + "type": "string", + "description": "Time Zone in ISO format." + }, + "query": { + "type": "string", + "description": "transaction search query string." + }, + "offset": { + "type": "integer", + "description": "offset." + }, + "limit": { + "type": "integer", + "description": "Limit on number of results." + }, + "sort": { + "type": "string", + "description": "A comma separated list of the following form - fieldName1 asc or desc, fieldName2 asc or desc, etc." + }, + "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`\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" + }, + "_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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" + }, + "merchantId": { + "type": "string", + "description": "Your CyberSource merchant ID." + }, + "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\nFor details, see `auth_rcode` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "rFlag": { + "type": "string", + "description": "One-word description of the result of the application.\n\nFor details, see `auth_rflag` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "applications": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The CyberSource payment application processed for the transaction.\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": "string", + "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": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value for each\ntransaction so that you can perform meaningful searches for the transaction.\n\nFor information about tracking orders, see \"Tracking and Reconciling Your Orders\" in [Getting Started with CyberSource Advanced for the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Getting_Started_SCMP/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 application name of client which is used to submit the request." + }, + "applicationUser": { + "type": "string", + "description": "The description for this field is not available." + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + }, + "transactionId": { + "type": "string", + "description": "Payer auth Transaction identifier." + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "maxLength": 48, + "description": "IP address of the customer.\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\nFor details, see the `marking_reason` field description in [Decision Manager Using the SCMP API Developer Guide.](https://www.cybersource.com/developers/documentation/fraud_management/)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 assigned by CyberSource to identify the submitted request. It is also appended to the endpoint of the resource." + } + } + }, + "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#### 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**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_firstname` 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" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nFor processor-specific information, see the `customer_lastname` 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" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\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 `bill_country` 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" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nCyberSource recommends that you include the country code when the order is from outside the U.S.\n\nFor processor-specific information, see the customer_phone field 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\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" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n**Processor specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n**Processor-specific maximum length**\n\n- Litle: 25\n- All other processors: 60\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address." + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.", + "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. CyberSource 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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm).\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n#### DCC for First Data\nNot used.\n\n#### Invoicing\nGrand total for the order, this is required for creating a new invoice.\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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" + } + } + } + } + }, + "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" + }, + "method": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal" + } + } + }, + "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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the cardholder\u2019s account number. This field is returned only for tokenized transactions.\nYou can use this value on the receipt that you give to the cardholder.\n\n**Note** This field is returned only for CyberSource through VisaNet and FDC Nashville Global.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 85\n- Field: American Express last 4 PAN return indicator.\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" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\nType of card to authorize.\n- 001 Visa\n- 002 Mastercard\n- 003 Amex\n- 004 Discover\n- 005: Diners Club\n- 007: JCB\n- 024: Maestro (UK Domestic)\n- 039 Encoded account number\n- 042: Maestro (International)\n\nFor the complete list of possible values, see `card_type` field description in the [Credit Card Services Using the SCMP API Guide.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\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/wwhelp/wwhimpl/js/html/wwhelp.htm)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google 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" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "processor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the Processor.\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\nprocessor for requirements.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be\na value that FDC Nashville Global issued to you.\n\nFor details, see the `terminal_id` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n\n**For Payouts**: This field is applicable for CtV.\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\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 details, see the `terminal_serial_number` field description in [Card-Present Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 specific CyberSource integrations. For details, see the `pos_device_id` field description\nin the [Card-Present Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Retail_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\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 [CyberSource Decision Manager Device Fingerprinting Guide.](https://www.cybersource.com/developers/documentation/fraud_management)\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 _CyberSource Decision Manager Device Fingerprinting 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" + }, + "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." + } + } + } + } + } + } } } } @@ -28155,642 +29077,774 @@ "properties": { "href": { "type": "string", - "example": "/sfs/v1/file-details?startDate=2018-01-01&endDate=2018-01-02" + "description": "This is the endpoint of the resource that was created by the successful request." }, "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" - } + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." } } } } } - } - } - }, - "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" + }, + "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", + "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" + }, + "consumerAuthenticationInformation": { + "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", + "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" + } + }, + "processingInformation": { + "paymentSolution": "xyz", + "businessApplicationId": "12345" + }, + "processorInformation": { + "processor": { + "name": "FirstData" + } + }, + "pointOfSaleInformation": { + "terminalId": "1", + "terminalSerialNumber": "123111123", + "deviceId": "asfaf12312313", + "partner": { + "originalTransactionId": "131231414414" + } }, - "message": { - "type": "string", - "description": "Error description about validation failed field" + "riskInformation": { + "providers": { + "fingerprint": { + "true_ipaddress": "1.101.102.112", + "hash": "tuWmt8Ubw0EAybBF3wrZcEqIcZsLr8YPldTQDUxAg2k=", + "smart_id": "23442fdadfa" + } + } }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" + "_links": { + "transactionDetail": { + "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/transactions/5217848115816817001541", + "method": "GET" + } } - }, - "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" + "_links": { + "self": { + "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/searches/87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", + "method": "GET" } } - }, - "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", + "description": "The specified resource not found in the system." + }, + "500": { + "description": "Unexpected server error." + } + } + } + }, + "/ums/v1/users": { + "get": { + "summary": "Get user information", + "description": "This endpoint is to get all the user information depending on the filter criteria passed in the query.", + "tags": [ + "UserManagement" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "operationId": "getUsers", + "x-devcenter-metaData": { + "categoryTag": "User_Management" + }, + "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": { - "title": "V1FileDetailsGet404Response", "type": "object", - "required": [ - "code", - "message" - ], + "title": "umsV1UsersGet200Response", "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": { + "users": { "type": "array", - "description": "Error fields List", "items": { "type": "object", "properties": { - "path": { - "type": "string", - "description": "Path of the failed property" + "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" + } + } }, - "message": { - "type": "string", - "description": "Error description about validation failed field" + "organizationInformation": { + "type": "object", + "properties": { + "organizationId": { + "type": "string" + } + } + }, + "contactInformation": { + "type": "object", + "properties": { + "email": { + "type": "string" + }, + "phoneNumber": { + "type": "string" + }, + "firstName": { + "type": "string" + }, + "lastName": { + "type": "string" + } + } }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" + "customFields": { + "additionalProperties": { + "type": "string" + } } - }, - "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" + "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" + } + } + ] } } }, - "500": { - "description": "Internal Server Error", + "400": { + "description": "Invalid request.", "schema": { - "title": "V1FileDetailsGet500Response", "type": "object", - "required": [ - "code", - "message" - ], + "title": "umsV1UsersGet400Response", "properties": { - "code": { - "type": "string", - "description": "Error code" - }, - "message": { + "submitTimeUtc": { "type": "string", - "description": "Error message" + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\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" }, - "localizationKey": { + "status": { "type": "string", - "description": "Localization Key Name" + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" }, - "correlationId": { + "reason": { "type": "string", - "description": "Correlation Id" + "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" }, - "detail": { + "message": { "type": "string", - "description": "Error Detail" + "description": "The detail message related to the status and reason listed above." }, - "fields": { + "details": { "type": "array", - "description": "Error fields List", "items": { "type": "object", "properties": { - "path": { - "type": "string", - "description": "Path of the failed property" - }, - "message": { + "field": { "type": "string", - "description": "Error description about validation failed field" + "description": "This is the flattened JSON object field name/path that is either missing or invalid." }, - "localizationKey": { + "reason": { "type": "string", - "description": "Localized Key Name" + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" } - }, - "description": "Provide validation failed input field details" + } } } - }, - "description": "Error Bean" + } + } + }, + "500": { + "description": "Unexpected server error." + } + } + } + } + }, + "definitions": { + "TokenizeResult": { + "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" + } + } + } + }, + "TokenizeParameters": { + "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." + } + } + } + } + }, + "KeyParameters": { + "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." + } + } + }, + "JsonWebKey": { + "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" + } + } + }, + "DerPublicKey": { + "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." + } + } + }, + "KeyResult": { + "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." }, - "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" - } + "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" } } } } }, - "/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-devcenter-metaData": { - "categoryTag": "Secure_File_Share" + "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." }, - "x-queryParameterDefaults": { - "organizationId": "testrest" + "cardExpirationMonth": { + "type": "string", + "description": "Two digit expiration month" }, - "produces": [ - "application/xml", - "text/csv", - "application/pdf" - ], - "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 + "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." + } + } + }, + "Error": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } } - ], - "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" + } + } + }, + "Link": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "Links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "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." + } } - }, - "404": { - "description": "No Reports Found" } } } }, - "/ums/v1/users": { - "get": { - "summary": "Get user information", - "description": "This endpoint is to get all the user information depending on the filter criteria passed in the query.", - "tags": [ - "UserManagement" - ], - "operationId": "getUsers", - "x-devcenter-metaData": { - "categoryTag": "User_Management" - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "permissionId": "CustomerProfileViewPermission" + "ResponseStatusDetails": { + "properties": { + "location": { + "type": "string", + "description": "Field name referred to for validation issues." }, - "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." + "message": { + "type": "string", + "description": "Description or code of any error response." + } + } + }, + "ErrorResponse": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" }, - { - "in": "query", - "name": "permissionId", + "message": { "type": "string", - "description": "permission that you are trying to search user on." + "description": "The detailed message related to the type stated above." }, - { - "in": "query", - "name": "roleId", - "type": "string", - "description": "role of the user you are trying to search on." + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } } - ], - "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" - } - } - } - } - } + } + } + }, + "ErrorLinks": { + "type": "object", + "properties": { + "next": { + "type": "array", + "items": { + "properties": { + "href": { + "type": "string", + "description": "URI of the linked resource." }, - "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" - } - } - ] + "title": { + "type": "string", + "description": "Label of the linked resource." + }, + "method": { + "type": "string", + "description": "HTTP method of the linked resource." } } - }, - "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`\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 - 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" - } - } - } - } + } + }, + "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." } } - }, - "500": { - "description": "Unexpected server error." } - } - } - } - }, - "definitions": { - "Metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - }, - "Links": { - "properties": { + }, "self": { "properties": { "href": { @@ -28806,60 +29860,251 @@ "description": "HTTP method of the linked resource." } } - }, - "documentation": { + } + } + }, + "FileDetailsResponse": { + "type": "object", + "properties": { + "fileDetails": { "type": "array", "items": { + "type": "object", "properties": { - "href": { + "fileId": { "type": "string", - "description": "URI of the linked resource." + "description": "Unique identifier of a file", + "example": "AC855F9F42C90361EC78202F47CDE98D70BEAA6FB00FB56AE83EE9A9DAEE077B" }, - "title": { + "name": { "type": "string", - "description": "Label of the linked resource." + "description": "Name of the file", + "example": "MyTransactionDetailreport.xml" }, - "method": { + "createdTime": { "type": "string", - "description": "HTTP method of the linked resource." + "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": "integer", + "description": "Size of the file in bytes", + "example": 2245397 } } } }, - "next": { + "_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" + } + } + } + } + } + } + } + }, + "FileDetail": { + "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": "integer", + "description": "Size of the file in bytes", + "example": 2245397 + } + } + }, + "ErrorBean": { + "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": { - "href": { + "path": { "type": "string", - "description": "URI of the linked resource." + "description": "Path of the failed property" }, - "title": { + "message": { "type": "string", - "description": "Label of the linked resource." + "description": "Error description about validation failed field" }, - "method": { + "localizationKey": { "type": "string", - "description": "HTTP method of the linked resource." + "description": "Localized Key Name" } - } + }, + "description": "Provide validation failed input field details" } } + }, + "description": "Error Bean" + }, + "ErrorFieldBean": { + "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" + }, + "SelfLinkBean": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "/sfs/v1/file-details?startDate=2018-01-01&endDate=2018-01-02" + }, + "method": { + "type": "string", + "example": "GET" + } } }, - "Link": { + "FileBean": { + "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" + } + } + }, + "Metadata": { + "type": "object", + "readOnly": true, "properties": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." - }, - "method": { + "creator": { "type": "string", - "description": "HTTP method of the linked resource." + "example": "merchantName", + "description": "The creator of the token." } } }, @@ -28932,951 +30177,334 @@ "PIForIILinkFirst": { "type": "object", "properties": { - "href": { - "type": "string", - "description": "A link to the collection starting at offset zero for the supplied limit.", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=0&limit=5" - } - } - }, - "PIForIILinkPrev": { - "type": "object", - "description": "A link to the previous collection starting at the supplied offset minus the supplied limit.", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=15&limit=5" - } - } - }, - "PIForIILinkNext": { - "type": "object", - "properties": { - "href": { - "description": "A link to the next collection starting at the supplied offset plus the supplied limit.", - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=25&limit=5" - } - } - }, - "PIForIILinkLast": { - "type": "object", - "properties": { - "href": { - "description": "A link to the last collection containing the remaining objects.", - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=35&limit=5" - } - } - }, - "409Links": { - "type": "object", - "readOnly": true, - "properties": { - "paymentInstruments": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" - } - } - } - } - }, - "409Link": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" - } - } - }, - "ErrorResponse": { - "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." - } - } - } - } - } - } - }, - "ErrorResponseWithHAL": { - "type": "array", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "paymentInstruments": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" - } - } - } - } - } - }, - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "message": { - "type": "string", - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { - "type": "string", - "description": "The location of the field that threw the error." - } - } - } - } - } - }, - "Error": { - "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": { - "properties": { - "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." - } - } - }, - "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." - } - } - } - }, - "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." - } - } - } - } - } + "href": { + "type": "string", + "description": "A link to the collection starting at offset zero for the supplied limit.", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=0&limit=5" } } }, - "Detail": { + "PIForIILinkPrev": { "type": "object", + "description": "A link to the previous collection starting at the supplied offset minus the supplied limit.", "properties": { - "name": { - "type": "string", - "description": "The name of the field that threw the error." - }, - "location": { + "href": { "type": "string", - "description": "The location of the field that threw the error." + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=15&limit=5" } } }, - "PersonalIdentificationArray": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { - "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - } - } - } + "PIForIILinkNext": { + "type": "object", + "properties": { + "href": { + "description": "A link to the next collection starting at the supplied offset plus the supplied limit.", + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=25&limit=5" } } }, - "PersonalIdentification": { + "PIForIILinkLast": { "type": "object", "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { + "href": { + "description": "A link to the last collection containing the remaining objects.", "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=35&limit=5" + } + } + }, + "409Links": { + "type": "object", + "readOnly": true, + "properties": { + "paymentInstruments": { "type": "object", "properties": { - "administrativeArea": { + "href": { "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" } } } } }, - "InstrumentIdentifier": { + "409Link": { "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" + } + } + }, + "ErrorResponseWithHAL": { + "type": "array", "properties": { "_links": { "type": "object", "readOnly": true, "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { + "paymentInstruments": { "type": "object", "properties": { "href": { "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789/paymentinstruments" } } } } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } + } + }, + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "message": { + "type": "string", + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." } } } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } } } }, - "InstrumentIdentifierUpdate": { + "Detail": { "type": "object", "properties": { - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } + "name": { + "type": "string", + "description": "The name of the field that threw the error." + }, + "location": { + "type": "string", + "description": "The location of the field that threw the error." + } + } + }, + "PersonalIdentificationArray": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" } } } } } }, - "PaymentInstrument": { + "PersonalIdentification": { "type": "object", "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, "id": { "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" }, - "state": { + "type": { "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } - } - }, - "card": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" - }, - "type": { - "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" - }, - "issueNumber": { - "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." - }, - "startMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "startYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" - }, - "currency": { - "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." - }, - "dateOBirth": { - "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { - "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - } - } - } - } - } - } - } + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" }, - "billTo": { + "issuedBy": { "type": "object", "properties": { - "firstName": { - "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "lastName": { - "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "company": { - "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address1": { - "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." - }, - "locality": { - "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, "administrativeArea": { "type": "string", "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "postalCode": { - "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "country": { - "type": "string", - "example": "US", - "minLength": 2, - "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "phoneNumber": { - "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" } } - }, - "processingInformation": { + } + } + }, + "InstrumentIdentifier": { + "type": "object", + "properties": { + "_links": { "type": "object", + "readOnly": true, "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } }, - "bankTransferOptions": { + "ancestor": { "type": "object", "properties": { - "SECCode": { + "href": { "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" } } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { + }, + "successor": { "type": "object", "properties": { - "alternateName": { + "href": { "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" } } } } }, - "metaData": { - "type": "object", + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "card": { + "type": "object", "properties": { - "creator": { + "number": { "type": "string", - "example": "merchantName", - "description": "The creator of the token." + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." } } }, - "instrumentIdentifier": { + "bankAccount": { "type": "object", "properties": { - "_links": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { "type": "object", - "readOnly": true, "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { + "initiator": { "type": "object", "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } } } } } - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "id": { + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + }, + "InstrumentIdentifierUpdate": { + "type": "object", + "properties": { + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { "type": "object", "properties": { - "authorizationOptions": { + "initiator": { "type": "object", "properties": { - "initiator": { + "merchantInitiatedTransaction": { "type": "object", "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." } } } } } } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } } } } } }, - "EmbeddedInstrumentIdentifier": { + "PaymentInstrument": { "type": "object", "properties": { "_links": { @@ -29912,11 +30540,17 @@ } } }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, "object": { "type": "string", "readOnly": true, "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" }, "state": { "type": "string", @@ -29924,62 +30558,118 @@ "example": "ACTIVE", "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" }, - "id": { - "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "card": { + "bankAccount": { "type": "object", "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." + "type": { + "type": "string", + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" } } }, - "bankAccount": { + "card": { "type": "object", + "required": [ + "type" + ], "properties": { - "number": { + "expirationMonth": { "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" }, - "routingNumber": { + "expirationYear": { "type": "string", - "example": "123456789", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + }, + "type": { + "type": "string", + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + }, + "issueNumber": { + "type": "string", + "example": "01", "minLength": 1, - "maxLength": 9, - "description": "Routing number." + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + }, + "startMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "startYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." } } }, - "processingInformation": { + "buyerInformation": { "type": "object", "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } + "companyTaxID": { + "type": "string", + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + }, + "currency": { + "type": "string", + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + }, + "dateOBirth": { + "type": "string", + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" } } } @@ -29988,1803 +30678,1567 @@ } } }, - "metadata": { + "billTo": { "type": "object", - "readOnly": true, "properties": { - "creator": { + "firstName": { "type": "string", - "example": "merchantName", - "description": "The creator of the token." + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "lastName": { + "type": "string", + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "company": { + "type": "string", + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" } } - } - } - }, - "PaymentInstrumentsForInstrumentIdentifier": { - "type": "object", - "properties": { - "_links": { + }, + "processingInformation": { "type": "object", - "readOnly": true, "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "A link to the current requested collection.", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=20&limit=5\"" - } - } - }, - "first": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "A link to the collection starting at offset zero for the supplied limit.", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=0&limit=5" - } - } - }, - "prev": { - "type": "object", - "description": "A link to the previous collection starting at the supplied offset minus the supplied limit.", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=15&limit=5" - } - } + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" }, - "next": { + "bankTransferOptions": { "type": "object", "properties": { - "href": { - "description": "A link to the next collection starting at the supplied offset plus the supplied limit.", + "SECCode": { "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=25&limit=5" + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" } } - }, - "last": { + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { "type": "object", - "properties": { - "href": { - "description": "A link to the last collection containing the remaining objects.", + "properties": { + "alternateName": { "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=35&limit=5" + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." } } } } }, - "object": { - "type": "string", - "readOnly": true, - "example": "collection", - "description": "'Shows the response is a collection of objects.'\n\nValid values:\n- collection\n" - }, - "offset": { - "type": "string", - "readOnly": true, - "example": "20", - "description": "The offset parameter supplied in the request." - }, - "limit": { - "type": "string", - "readOnly": true, - "example": "1", - "description": "The limit parameter supplied in the request." - }, - "count": { - "type": "string", - "readOnly": true, - "example": "1", - "description": "The number of Payment Instruments returned in the array." - }, - "total": { - "type": "string", + "metaData": { + "type": "object", "readOnly": true, - "example": "39", - "description": "The total number of Payment Instruments associated with the Instrument Identifier in the zero-based dataset." + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } }, - "_embedded": { + "instrumentIdentifier": { "type": "object", "properties": { - "paymentInstruments": { - "description": "Array of Payment Instruments returned for the supplied Instrument Identifier.", - "type": "array", - "items": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" } - }, - "card": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" - }, - "type": { - "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" - }, - "issueNumber": { - "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." - }, - "startMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "startYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" - }, - "currency": { - "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." - }, - "dateOBirth": { - "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" - }, - "personalIdentification": { - "type": "array", - "items": { + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { "type": "object", "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { + "previousTransactionId": { "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - } - } + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." } } } } } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "lastName": { - "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "company": { - "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address1": { - "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." - }, - "locality": { - "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "administrativeArea": { - "type": "string", - "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "postalCode": { - "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "country": { - "type": "string", - "example": "US", - "minLength": 2, - "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "phoneNumber": { - "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." - } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + } + } + }, + "EmbeddedInstrumentIdentifier": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." } } } - }, - "metaData": { + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } + } + }, + "PaymentInstrumentsForInstrumentIdentifier": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "A link to the current requested collection.", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=20&limit=5\"" + } + } + }, + "first": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "A link to the collection starting at offset zero for the supplied limit.", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=0&limit=5" + } + } + }, + "prev": { + "type": "object", + "description": "A link to the previous collection starting at the supplied offset minus the supplied limit.", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=15&limit=5" + } + } + }, + "next": { + "type": "object", + "properties": { + "href": { + "description": "A link to the next collection starting at the supplied offset plus the supplied limit.", + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=25&limit=5" + } + } + }, + "last": { + "type": "object", + "properties": { + "href": { + "description": "A link to the last collection containing the remaining objects.", + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/5B32CE6167B09343E05333B9D30A53E1/paymentinstruments?offset=35&limit=5" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "collection", + "description": "'Shows the response is a collection of objects.'\n\nValid values:\n- collection\n" + }, + "offset": { + "type": "string", + "readOnly": true, + "example": "20", + "description": "The offset parameter supplied in the request." + }, + "limit": { + "type": "string", + "readOnly": true, + "example": "1", + "description": "The limit parameter supplied in the request." + }, + "count": { + "type": "string", + "readOnly": true, + "example": "1", + "description": "The number of Payment Instruments returned in the array." + }, + "total": { + "type": "string", + "readOnly": true, + "example": "39", + "description": "The total number of Payment Instruments associated with the Instrument Identifier in the zero-based dataset." + }, + "_embedded": { + "type": "object", + "properties": { + "paymentInstruments": { + "description": "Array of Payment Instruments returned for the supplied Instrument Identifier.", + "type": "array", + "items": { + "type": "object", + "properties": { + "_links": { "type": "object", "readOnly": true, "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "id": { - "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "card": { + "self": { "type": "object", "properties": { - "number": { + "href": { "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" } } }, - "bankAccount": { + "ancestor": { "type": "object", "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { + "href": { "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" } } }, - "metadata": { + "successor": { "type": "object", - "readOnly": true, "properties": { - "creator": { + "href": { "type": "string", - "example": "merchantName", - "description": "The creator of the token." + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" } } } } - } - } - } - } - } - } - } - }, - "PaymentInstrumentsArray": { - "description": "Array of Payment Instruments returned for the supplied Instrument Identifier.", - "type": "array", - "items": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "properties": { - "href": { + }, + "id": { "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "ancestor": { - "type": "object", - "properties": { - "href": { + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - }, - "successor": { - "type": "object", - "properties": { - "href": { + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" + }, + "state": { "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "readOnly": true, - "example": "1234567890123456800", - "description": "Unique identification number assigned by CyberSource to the submitted request." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } - } - }, - "card": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" - }, - "type": { - "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" - }, - "issueNumber": { - "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." - }, - "startMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "startYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" - }, - "currency": { - "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." - }, - "dateOBirth": { - "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" - }, - "type": { - "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" + } + } + }, + "card": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + }, + "type": { + "type": "string", + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + }, + "issueNumber": { + "type": "string", + "example": "01", + "minLength": 1, + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + }, + "startMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "startYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + }, + "currency": { + "type": "string", + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + }, + "dateOBirth": { + "type": "string", + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + } + } + } + } } } } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "lastName": { - "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "company": { - "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address1": { - "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." - }, - "locality": { - "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "administrativeArea": { - "type": "string", - "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "postalCode": { - "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "country": { - "type": "string", - "example": "US", - "minLength": 2, - "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "phoneNumber": { - "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." - } - } - } - } - }, - "metaData": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "example": "merchantName", - "description": "The creator of the token." - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "lastName": { + "type": "string", + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "company": { + "type": "string", + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + } + } + }, + "processingInformation": { "type": "object", "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + } + } } } }, - "ancestor": { + "merchantInformation": { "type": "object", "properties": { - "href": { - "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + } + } } } }, - "successor": { + "metaData": { "type": "object", + "readOnly": true, "properties": { - "href": { + "creator": { "type": "string", - "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + "example": "merchantName", + "description": "The creator of the token." } } - } - } - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" - }, - "id": { - "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { + "instrumentIdentifier": { "type": "object", "properties": { - "initiator": { + "_links": { "type": "object", + "readOnly": true, "properties": { - "merchantInitiatedTransaction": { + "self": { "type": "object", "properties": { - "previousTransactionId": { + "href": { "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } } } } } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } } } } } + } + } + } + } + } + }, + "PaymentInstrumentsArray": { + "description": "Array of Payment Instruments returned for the supplied Instrument Identifier.", + "type": "array", + "items": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } }, - "metadata": { + "ancestor": { "type": "object", - "readOnly": true, "properties": { - "creator": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { "type": "string", - "example": "merchantName", - "description": "The creator of the token." + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" } } } } - } - } - } - }, - "InstrumentIdentifierCard": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890987654", - "minLength": 12, - "maxLength": 19, - "description": "Customer\u2019s credit card number." - } - } - }, - "ExistingInstrumentIdentifierId": { - "type": "string", - "example": "1234567890123456789", - "minLength": 16, - "maxLength": 32, - "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." - }, - "PaymentInstrumentCard": { - "type": "object", - "required": [ - "type" - ], - "properties": { - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" - }, - "type": { - "type": "string", - "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" - }, - "issueNumber": { - "type": "string", - "example": "01", - "minLength": 1, - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." - }, - "startMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "startYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." - } - } - }, - "PaymentInstrumentBankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "savings", - "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" - } - } - }, - "InstrumentIdentifierBankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." - } - } - }, - "InstrumentIdentifierEnrollableCard": { - "type": "object", - "properties": { - "type": { - "type": "string", - "example": "enrollable card", - "description": "Type of Card" - }, - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "4622943127013705", - "minLength": 12, - "maxLength": 19, - "description": "Credit card number (PAN)." - }, - "expirationMonth": { - "type": "string", - "format": "MM", - "example": "12", - "minLength": 2, - "maxLength": 2, - "description": "Card expiration month.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "format": "YYYY", - "example": "2022", - "minLength": 4, - "maxLength": 4, - "description": "Card expiration year.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" - }, - "securityCode": { - "type": "string", - "example": "838", - "minLength": 3, - "maxLength": 4, - "description": "Card security code." - } - } - }, - "BankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "example": "1234567890123456800", - "minLength": 1, - "maxLength": 19, - "description": "Checking account number." - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "minLength": 1, - "maxLength": 9, - "description": "Routing number." + }, + "id": { + "type": "string", + "readOnly": true, + "example": "1234567890123456800", + "description": "Unique identification number assigned by CyberSource to the submitted request." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- paymentInstrument\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" + } } - } - }, - "billTo": { - "type": "object", - "properties": { - "address1": { - "type": "string", - "example": "8310 Capital of Texas Highway North", - "description": "First address line registered with card." - }, - "address2": { - "type": "string", - "example": "Bluffstone Drive", - "description": "Second address line registered with card." - }, - "locality": { - "type": "string", - "example": "Austin", - "description": "Locality registered with card." - }, - "administrativeArea": { - "type": "string", - "example": "TX", - "description": "Administrative area registered with card." - }, - "postalCode": { - "type": "string", - "example": "78731", - "description": "Postal code registered with card." - }, - "country": { - "type": "string", - "example": "US", - "description": "Country registered with card." + }, + "card": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" + }, + "type": { + "type": "string", + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" + }, + "issueNumber": { + "type": "string", + "example": "01", + "minLength": 1, + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." + }, + "startMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "startYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." + } } - } - } - } - }, - "InstrumentIdentifierProcessingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" + }, + "currency": { + "type": "string", + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." + }, + "dateOBirth": { + "type": "string", + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" + }, + "personalIdentification": { + "type": "array", + "items": { "type": "object", "properties": { - "previousTransactionId": { + "id": { "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + }, + "type": { + "type": "string", + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + } + } } } } } } - } - } - } - }, - "AuthorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - } - } - }, - "Initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - } - } - }, - "MerchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "example": "123456789012345", - "maxLength": 15, - "description": "Previous Consumer Initiated Transaction Id." - } - } - }, - "BuyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "example": "1234567890123456800", - "maxLength": 9, - "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" - }, - "currency": { - "type": "string", - "example": "USD", - "minLength": 3, - "maxLength": 3, - "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." - }, - "dateOBirth": { - "type": "string", - "format": "YYYY-MM-DD|YYYYMMDD", - "example": "1960-12-30", - "minLength": 8, - "maxLength": 10, - "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" - }, - "personalIdentification": { - "type": "array", - "items": { + }, + "billTo": { "type": "object", "properties": { - "id": { + "firstName": { "type": "string", - "example": "1234567890", - "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" }, - "type": { + "lastName": { "type": "string", - "example": "driver license", - "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "company": { + "type": "string", + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" }, - "issuedBy": { + "bankTransferOptions": { "type": "object", "properties": { - "administrativeArea": { + "SECCode": { "type": "string", - "example": "CA", - "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" } } } } - } - } - } - }, - "BillTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "example": "John", - "maxLength": 60, - "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "lastName": { - "type": "string", - "example": "Smith", - "maxLength": 60, - "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "company": { - "type": "string", - "example": "CyberSource", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address1": { - "type": "string", - "example": "12 Main Street", - "maxLength": 60, - "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "example": "20 My Street", - "maxLength": 60, - "description": "Additional address information." - }, - "locality": { - "type": "string", - "example": "Foster City", - "maxLength": 50, - "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "administrativeArea": { - "type": "string", - "example": "CA", - "maxLength": 20, - "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "postalCode": { - "type": "string", - "example": "90200", - "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "country": { - "type": "string", - "example": "US", - "minLength": 2, - "maxLength": 3, - "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "example": "john.smith@example.com", - "maxLength": 320, - "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "phoneNumber": { - "type": "string", - "example": "555123456", - "minLength": 6, - "maxLength": 32, - "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" - } - } - }, - "ProcessingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "example": true, - "default": false, - "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "example": "WEB", - "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + } + } + } } - } - } - } - }, - "MerchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "example": "Branch Name", - "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + }, + "metaData": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } } - } - } - } - }, - "TokenizeResult": { - "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" - } - } - } - }, - "TokenizeParameters": { - "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." + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "ancestor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + }, + "successor": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "https://api.cybersource.com/tms/v1/instrumentidentifiers/1234567890123456789" + } + } + } + } + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "'Describes type of token.'\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "'Current state of the token.'\n\nValid values:\n- ACTIVE\n- CLOSED\n" + }, + "id": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + } + } + } + } + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "example": "merchantName", + "description": "The creator of the token." + } + } + } } } } } }, - "KeyParameters": { - "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." - } - } - }, - "JsonWebKey": { - "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" - } - } - }, - "DerPublicKey": { + "InstrumentIdentifierCard": { "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": { + "number": { "type": "string", - "description": "Base64 encoded public key value." + "example": "1234567890987654", + "minLength": 12, + "maxLength": 19, + "description": "Customer\u2019s credit card number." } } }, - "KeyResult": { - "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" - } - } - } - } + "ExistingInstrumentIdentifierId": { + "type": "string", + "example": "1234567890123456789", + "minLength": 16, + "maxLength": 32, + "description": "The ID of the existing instrument identifier to be linked to the newly created payment instrument." }, - "CardInfo": { + "PaymentInstrumentCard": { "type": "object", "required": [ - "cardNumber", - "cardType" + "type" ], "properties": { - "cardNumber": { + "expirationMonth": { "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." + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Two-digit month in which the credit card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For more information about relaxed requirements, see the TMS REST API Developer Guide.\n\nImportant:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" }, - "cardExpirationMonth": { + "expirationYear": { "type": "string", - "description": "Two digit expiration month" + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\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 the year.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. For details, see [Relaxed Requirements for Address Data and Expiration Date.](https://www.cybersource.com/developers/integration_methods/relax_avs/).\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.'\n" }, - "cardExpirationYear": { + "type": { "type": "string", - "description": "Four digit expiration year" + "description": "Type of credit card. Possible values:\n * **visa** -- Visa (001)\n * **mastercard** -- Mastercard (002) - Eurocard\u2014European regional brand of Mastercard\n * **american express** -- American Express (003)\n * **discover** -- Discover (004)\n * **diners club** -- Diners Club (005)\n * **carte blanche** -- Carte Blanche (006)\n * **jcb** -- JCB (007)\n * **optima** -- Optima (008)\n * **twinpay credit** -- Twinpay Credit (011)\n * **twinpay debit** -- Twinpay Debit (012)\n * **walmart** -- Walmart (013)\n * **enroute** -- EnRoute (014)\n * **lowes consumer** -- Lowes consumer (015)\n * **home depot consumer** -- Home Depot consumer (016)\n * **mbna** -- MBNA (017)\n * **dicks sportswear** -- Dicks Sportswear (018)\n * **casual corner** -- Casual Corner (019)\n * **sears** -- Sears (020)\n * **jal** -- JAL (021)\n * **disney** -- Disney (023)\n * **maestro uk domestic** -- Maestro (024) - UK Domestic\n * **sams club consumer** -- Sams Club consumer (025)\n * **sams club business** -- Sams Club business (026)\n * **bill me later** -- Bill me later (028)\n * **bebe** -- Bebe (029)\n * **restoration hardware** -- Restoration Hardware (030)\n * **delta online** -- Delta (031) \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * **solo** -- Solo (032)\n * **visa electron** -- Visa Electron (033)\n * **dankort** -- Dankort (034)\n * **laser** -- Laser (035)\n * **carte bleue** -- Carte Bleue (036) \u2014 formerly Cartes Bancaires\n * **carta si** -- Carta Si (037)\n * **pinless debit** -- pinless debit (038)\n * **encoded account** -- encoded account (039)\n * **uatp** -- UATP (040)\n * **household** -- Household (041)\n * **maestro international** -- Maestro (042) - International\n * **ge money uk** -- GE Money UK (043)\n * **korean cards** -- Korean cards (044)\n * **style** -- Style (045)\n * **jcrew** -- JCrew (046)\n * **payease china processing ewallet** -- PayEase China processing eWallet (047)\n * **payease china processing bank transfer** -- PayEase China processing bank transfer (048)\n * **meijer private label** -- Meijer Private Label (049)\n * **hipercard** -- Hipercard (050) \u2014 supported only by the Comercio Latino processor.\n * **aura** -- Aura (051) \u2014 supported only by the Comercio Latino processor.\n * **redecard** -- Redecard (052)\n * **elo** -- Elo (054) \u2014 supported only by the Comercio Latino processor.\n * **capital one private label** -- Capital One Private Label (055)\n * **synchrony private label** -- Synchrony Private Label (056)\n * **costco private label** -- Costco Private Label (057)\n * **mada** -- mada (060)\n * **china union pay** -- China Union Pay (062)\n * **falabella private label** -- Falabella private label (063)\n" }, - "cardType": { + "issueNumber": { "type": "string", - "description": "Card Type. This field is required. Refer to the CyberSource Credit Card Services documentation for supported card types." - } - } - }, - "ResponseStatus": { - "properties": { - "status": { - "type": "number", - "description": "HTTP Status code." + "example": "01", + "minLength": 1, + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder." }, - "reason": { + "startMonth": { "type": "string", - "description": "Error Reason Code." + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" }, - "message": { + "startYear": { "type": "string", - "description": "Error Message." + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" }, - "correlationId": { + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "Card Use As Field. Supported value of `pinless debit` only. Only for use with Pinless Debit tokens." + } + } + }, + "PaymentInstrumentBankAccount": { + "type": "object", + "properties": { + "type": { "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." - } - } - } + "example": "savings", + "description": "Checking account type. Possible values:\n * C: checking\n * S: savings (USD only)\n * X: corporate checking (USD only)\n * G: general ledger\n" } } }, - "ResponseStatusDetails": { + "InstrumentIdentifierBankAccount": { + "type": "object", "properties": { - "location": { + "number": { "type": "string", - "description": "Field name referred to for validation issues." + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." }, - "message": { + "routingNumber": { "type": "string", - "description": "Description or code of any error response." + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." } } }, - "ErrorLinks": { + "InstrumentIdentifierEnrollableCard": { "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." - } + "type": { + "type": "string", + "example": "enrollable card", + "description": "Type of Card" + }, + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "4622943127013705", + "minLength": 12, + "maxLength": 19, + "description": "Credit card number (PAN)." + }, + "expirationMonth": { + "type": "string", + "format": "MM", + "example": "12", + "minLength": 2, + "maxLength": 2, + "description": "Card expiration month.\n\nFormat: `MM`.\nPossible values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "format": "YYYY", + "example": "2022", + "minLength": 4, + "maxLength": 4, + "description": "Card expiration year.\n\nFormat: `YYYY`.\nPossible values: `1900` through `2099`.\n" + }, + "securityCode": { + "type": "string", + "example": "838", + "minLength": 3, + "maxLength": 4, + "description": "Card security code." } } }, - "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." - } + "BankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "example": "1234567890123456800", + "minLength": 1, + "maxLength": 19, + "description": "Checking account number." + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "minLength": 1, + "maxLength": 9, + "description": "Routing number." } } }, - "self": { + "billTo": { + "type": "object", "properties": { - "href": { + "address1": { "type": "string", - "description": "URI of the linked resource." + "example": "8310 Capital of Texas Highway North", + "description": "First address line registered with card." }, - "title": { + "address2": { "type": "string", - "description": "Label of the linked resource." + "example": "Bluffstone Drive", + "description": "Second address line registered with card." }, - "method": { + "locality": { "type": "string", - "description": "HTTP method of the linked resource." + "example": "Austin", + "description": "Locality registered with card." + }, + "administrativeArea": { + "type": "string", + "example": "TX", + "description": "Administrative area registered with card." + }, + "postalCode": { + "type": "string", + "example": "78731", + "description": "Postal code registered with card." + }, + "country": { + "type": "string", + "example": "US", + "description": "Country registered with card." } } } } }, - "FileDetailsResponse": { + "InstrumentIdentifierProcessingInformation": { "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": "integer", - "description": "Size of the file in bytes", - "example": 2245397 - } - } - } - }, - "_links": { + "authorizationOptions": { "type": "object", "properties": { - "self": { + "initiator": { "type": "object", "properties": { - "href": { - "type": "string", - "example": "/sfs/v1/file-details?startDate=2018-01-01&endDate=2018-01-02" - }, - "method": { - "type": "string", - "example": "GET" + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } } } - }, - "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" - } + } + } + } + } + }, + "AuthorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." } } } @@ -31792,147 +32246,193 @@ } } }, - "FileDetail": { + "Initiator": { "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": "integer", - "description": "Size of the file in bytes", - "example": 2245397 + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } } } }, - "ErrorBean": { + "MerchantInitiatedTransaction": { "type": "object", - "required": [ - "code", - "message" - ], "properties": { - "code": { - "type": "string", - "description": "Error code" - }, - "message": { + "previousTransactionId": { "type": "string", - "description": "Error message" - }, - "localizationKey": { + "example": "123456789012345", + "maxLength": 15, + "description": "Previous Consumer Initiated Transaction Id." + } + } + }, + "BuyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { "type": "string", - "description": "Localization Key Name" + "example": "1234567890123456800", + "maxLength": 9, + "description": "Tax identifier for the customer\u2019s company.\n\n**Important**:\nContact your TeleCheck representative to find out whether this field is required or optional.\n" }, - "correlationId": { + "currency": { "type": "string", - "description": "Correlation Id" + "example": "USD", + "minLength": 3, + "maxLength": 3, + "description": "Currency used by the customer. Accepts input in the ISO 4217 standard, stores as ISO 4217 Alpha." }, - "detail": { + "dateOBirth": { "type": "string", - "description": "Error Detail" + "format": "YYYY-MM-DD|YYYYMMDD", + "example": "1960-12-30", + "minLength": 8, + "maxLength": 10, + "description": "Date of birth of the customer.\n\nFormat: `YYYY-MM-DD` or `YYYYMMDD`\n" }, - "fields": { + "personalIdentification": { "type": "array", - "description": "Error fields List", "items": { "type": "object", "properties": { - "path": { + "id": { "type": "string", - "description": "Path of the failed property" + "example": "1234567890", + "description": "Customer's identification number.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" }, - "message": { + "type": { "type": "string", - "description": "Error description about validation failed field" + "example": "driver license", + "description": "Type of personal identification.\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n\nValid values:\n- driver license\n" }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "example": "CA", + "description": "State or province in which the customer\u2019s driver\u2019s license was issued. Use the State, Province, and Territory Codes for the United States and Canada.\n\n**Important**:\nContact your TeleCheck representative to learn whether this field is required or optional.\n" + } + } } - }, - "description": "Provide validation failed input field details" + } } } - }, - "description": "Error Bean" + } }, - "ErrorFieldBean": { + "BillTo": { "type": "object", "properties": { - "path": { + "firstName": { "type": "string", - "description": "Path of the failed property" + "example": "John", + "maxLength": 60, + "description": "Customer\u2019s first name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" }, - "message": { + "lastName": { "type": "string", - "description": "Error description about validation failed field" + "example": "Smith", + "maxLength": 60, + "description": "Customer\u2019s last name. For a credit card transaction, this name must match the name on the card.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" }, - "localizationKey": { + "company": { "type": "string", - "description": "Localized Key Name" + "example": "CyberSource", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address1": { + "type": "string", + "example": "12 Main Street", + "maxLength": 60, + "description": "First line of the billing street address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "example": "20 My Street", + "maxLength": 60, + "description": "Additional address information." + }, + "locality": { + "type": "string", + "example": "Foster City", + "maxLength": 50, + "description": "City of the billing address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "administrativeArea": { + "type": "string", + "example": "CA", + "maxLength": 20, + "description": "State or province of the billing address. For an address in the U.S. or Canada, use the State, Province, and Territory Codes for the United States and Canada.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "postalCode": { + "type": "string", + "example": "90200", + "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**Example** 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample A1B 2C3\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important**:\nIt is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "country": { + "type": "string", + "example": "US", + "minLength": 2, + "maxLength": 3, + "description": "Country of the billing address. Accepts input in the ISO 3166-1 standard, stores as ISO 3166-1-Alpha-2.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "example": "john.smith@example.com", + "maxLength": 320, + "description": "Customer\u2019s email address.\n\nThis field is optional if your CyberSource account is configured for relaxed requirements for address data and expiration date. See the TMS REST Developer Guide for more information about relaxed address requirements.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "phoneNumber": { + "type": "string", + "example": "555123456", + "minLength": 6, + "maxLength": 32, + "description": "Customer phone number. When you create a customer profile, the requirements depend on the payment method:\n * Credit cards \u2014 optional.\n * Electronic checks \u2014 contact your payment processor representative to find out if this field is required or optional.\n * PINless debits \u2014 optional.\n" } - }, - "description": "Provide validation failed input field details" + } }, - "SelfLinkBean": { + "ProcessingInformation": { "type": "object", "properties": { - "href": { - "type": "string", - "example": "/sfs/v1/file-details?startDate=2018-01-01&endDate=2018-01-02" + "billPaymentProgramEnabled": { + "type": "boolean", + "example": true, + "default": false, + "description": "Indicates that the payments for this customer profile are for the Bill Payment program. Possible values:\n * false: Not a Visa Bill Payment.\n * true: Visa Bill Payment.\n" }, - "method": { - "type": "string", - "example": "GET" + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "example": "WEB", + "description": "**Important** This field is required if your processor is TeleCheck.\n\nCode that specifies the authorization method for the transaction. Possible values:\n\n- **CCD**: corporate cash disbursement. Charge or credit against a business checking account. You can use one-time or recurring CCD transactions to transfer funds to or from a corporate entity. A standing authorization is required for recurring transactions.\n- **PPD**: prearranged payment and deposit entry. Charge or credit against a personal checking or savings account. You can originate a PPD entry only when the payment and deposit terms between you and the customer are prearranged. A written authorization from the customer is required for one-time transactions and a written standing authorization is required for recurring transactions.\n- **TEL**: telephone-initiated entry. One-time charge against a personal checking or savings account. You can originate a TEL entry only when there is a business relationship between you and the customer or when the customer initiates a telephone call to you. For a TEL entry, you must obtain a payment authorization from the customer over the telephone. There is no recurring billing option for TEL.\n- **WEB**: internet-initiated entry\u2014charge against a personal checking or savings account. You can originate a one-time or recurring WEB entry when the customer initiates the transaction over the Internet. For a WEB entry, you must obtain payment authorization from the customer over the Internet.\n" + } + } } } }, - "FileBean": { + "MerchantInformation": { "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" + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "example": "Branch Name", + "description": "Alternate information for your business. This API field overrides the company entry description value in your CyberSource account." + } + } } } } diff --git a/generator/cybersource_node_sdk_gen.bat b/generator/cybersource_node_sdk_gen.bat index 6d97d61f..459c963e 100644 --- a/generator/cybersource_node_sdk_gen.bat +++ b/generator/cybersource_node_sdk_gen.bat @@ -11,16 +11,6 @@ REM Command to generate SDK java -jar swagger-codegen-cli-2.3.0.jar generate -t cybersource-javascript-template -i cybersource-rest-spec.json -l javascript -o ../ -c cybersource-node-config.json -REM Batch script for changing accept type -powershell -Command "(Get-Content ..\src\Api\SearchTransactionsApi.js) | ForEach-Object { $_ -replace 'accepts = \[''application/json;charset=utf-8', 'accepts = [''*/*'} | Set-Content ..\src\Api\SearchTransactionsApi.js" - -REM powershell -Command "(Get-Content ..\src\index.js) | ForEach-Object { $_ -replace \"require\('./api/Download([DTXS]{3})Api'\), \", \"\" } | Set-Content ..\src\index.js" - -REM powershell -Command "(Get-Content ..\src\index.js) | ForEach-Object { $_ -replace \"'api/Download([DTXS]{3})Api', \", \"\" } | Set-Content ..\src\index.js" - -REM powershell -Command "(Get-Content ..\src\index.js) | ForEach-Object { $_ -replace \"Download([DTXS]{3})Api, \", \"\" } | Set-Content ..\src\index.js" - - git checkout ..\README.md git checkout ..\package.json diff --git a/package.json b/package.json index 12b947d1..f97e712e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cybersource-rest-client", - "version": "0.0.12", + "version": "0.0.13", "description": "Node.js SDK for the CyberSource REST API", "license": "CyberSource", "main": "src/index.js", diff --git a/src/ApiClient.js b/src/ApiClient.js index 1959d6b2..78c9981d 100644 --- a/src/ApiClient.js +++ b/src/ApiClient.js @@ -509,7 +509,12 @@ if (accept) { request.accept(accept); /* Code for downloading file from stream */ - if (accept === 'application/xml') { + if (accept === 'application/xml' || accept === 'text/csv') { + if (accept === 'application/xml') { + this.downloadFilePath = this.downloadFilePath + '.xml'; + } else { + this.downloadFilePath = this.downloadFilePath + '.csv'; + } var fs = require('fs'); var stream = fs.createWriteStream(this.downloadFilePath); request.send().pipe(stream); diff --git a/src/api/CreditApi.js b/src/api/CreditApi.js index aa45ceb3..cadf7c70 100644 --- a/src/api/CreditApi.js +++ b/src/api/CreditApi.js @@ -88,7 +88,7 @@ var returnType = PtsV2CreditsPost201Response; return this.apiClient.callApi( - '/pts/v2/credits/', 'POST', + '/pts/v2/credits', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, callback ); diff --git a/src/api/DownloadDTDApi.js b/src/api/DownloadDTDApi.js index aa6568ed..14c4e12c 100644 --- a/src/api/DownloadDTDApi.js +++ b/src/api/DownloadDTDApi.js @@ -58,8 +58,8 @@ */ /** - * Used to download DTDs for reports - * Downloads DTDs for reports on no-auth. + * Download DTD for report + * Used to download DTDs for reports on no-auth. * @param {String} reportDefinitionNameVersion 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 * @param {module:api/DownloadDTDApi~getDTDV2Callback} callback The callback function, accepting three arguments: error, data, response */ diff --git a/src/api/DownloadXSDApi.js b/src/api/DownloadXSDApi.js index c0683a73..ae34e87f 100644 --- a/src/api/DownloadXSDApi.js +++ b/src/api/DownloadXSDApi.js @@ -58,8 +58,8 @@ */ /** - * Used to download XSDs for reports - * Downloads XSDs for reports on no-auth. + * Download XSD for report + * Used to download XSDs for reports on no-auth. * @param {String} reportDefinitionNameVersion 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 * @param {module:api/DownloadXSDApi~getXSDV2Callback} callback The callback function, accepting three arguments: error, data, response */ diff --git a/src/api/InstrumentIdentifierApi.js b/src/api/InstrumentIdentifierApi.js index e04aafa5..cdd03991 100644 --- a/src/api/InstrumentIdentifierApi.js +++ b/src/api/InstrumentIdentifierApi.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/CreateInstrumentIdentifierRequest', 'model/InlineResponse400', 'model/TmsV1InstrumentIdentifiersDelete409Response', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response', 'model/TmsV1InstrumentIdentifiersPost200Response', 'model/UpdateInstrumentIdentifierRequest'], factory); + define(['ApiClient', 'model/CreateInstrumentIdentifierRequest', 'model/InlineResponse4001', 'model/TmsV1InstrumentIdentifiersDelete409Response', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response', 'model/TmsV1InstrumentIdentifiersPost200Response', 'model/UpdateInstrumentIdentifierRequest'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('../model/CreateInstrumentIdentifierRequest'), require('../model/InlineResponse400'), require('../model/TmsV1InstrumentIdentifiersDelete409Response'), require('../model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response'), require('../model/TmsV1InstrumentIdentifiersPost200Response'), require('../model/UpdateInstrumentIdentifierRequest')); + module.exports = factory(require('../ApiClient'), require('../model/CreateInstrumentIdentifierRequest'), require('../model/InlineResponse4001'), require('../model/TmsV1InstrumentIdentifiersDelete409Response'), require('../model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response'), require('../model/TmsV1InstrumentIdentifiersPost200Response'), require('../model/UpdateInstrumentIdentifierRequest')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.InstrumentIdentifierApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreateInstrumentIdentifierRequest, root.CyberSource.InlineResponse400, root.CyberSource.TmsV1InstrumentIdentifiersDelete409Response, root.CyberSource.TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response, root.CyberSource.TmsV1InstrumentIdentifiersPost200Response, root.CyberSource.UpdateInstrumentIdentifierRequest); + root.CyberSource.InstrumentIdentifierApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreateInstrumentIdentifierRequest, root.CyberSource.InlineResponse4001, root.CyberSource.TmsV1InstrumentIdentifiersDelete409Response, root.CyberSource.TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response, root.CyberSource.TmsV1InstrumentIdentifiersPost200Response, root.CyberSource.UpdateInstrumentIdentifierRequest); } -}(this, function(ApiClient, CreateInstrumentIdentifierRequest, InlineResponse400, TmsV1InstrumentIdentifiersDelete409Response, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response, TmsV1InstrumentIdentifiersPost200Response, UpdateInstrumentIdentifierRequest) { +}(this, function(ApiClient, CreateInstrumentIdentifierRequest, InlineResponse4001, TmsV1InstrumentIdentifiersDelete409Response, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response, TmsV1InstrumentIdentifiersPost200Response, UpdateInstrumentIdentifierRequest) { 'use strict'; /** diff --git a/src/api/PaymentInstrumentApi.js b/src/api/PaymentInstrumentApi.js index 210882a0..c076bbab 100644 --- a/src/api/PaymentInstrumentApi.js +++ b/src/api/PaymentInstrumentApi.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/CreatePaymentInstrumentRequest', 'model/InlineResponse400', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments', 'model/UpdatePaymentInstrumentRequest'], factory); + define(['ApiClient', 'model/CreatePaymentInstrumentRequest', 'model/InlineResponse4001', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments', 'model/UpdatePaymentInstrumentRequest'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('../model/CreatePaymentInstrumentRequest'), require('../model/InlineResponse400'), require('../model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments'), require('../model/UpdatePaymentInstrumentRequest')); + module.exports = factory(require('../ApiClient'), require('../model/CreatePaymentInstrumentRequest'), require('../model/InlineResponse4001'), require('../model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments'), require('../model/UpdatePaymentInstrumentRequest')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.PaymentInstrumentApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreatePaymentInstrumentRequest, root.CyberSource.InlineResponse400, root.CyberSource.TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments, root.CyberSource.UpdatePaymentInstrumentRequest); + root.CyberSource.PaymentInstrumentApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreatePaymentInstrumentRequest, root.CyberSource.InlineResponse4001, root.CyberSource.TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments, root.CyberSource.UpdatePaymentInstrumentRequest); } -}(this, function(ApiClient, CreatePaymentInstrumentRequest, InlineResponse400, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments, UpdatePaymentInstrumentRequest) { +}(this, function(ApiClient, CreatePaymentInstrumentRequest, InlineResponse4001, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments, UpdatePaymentInstrumentRequest) { 'use strict'; /** diff --git a/src/api/PaymentsApi.js b/src/api/PaymentsApi.js index 0fab20e0..1f9ea290 100644 --- a/src/api/PaymentsApi.js +++ b/src/api/PaymentsApi.js @@ -88,7 +88,7 @@ var returnType = PtsV2PaymentsPost201Response; return this.apiClient.callApi( - '/pts/v2/payments/', 'POST', + '/pts/v2/payments', 'POST', pathParams, queryParams, headerParams, formParams, postBody, authNames, contentTypes, accepts, returnType, callback ); diff --git a/src/api/ReportSubscriptionsApi.js b/src/api/ReportSubscriptionsApi.js index 3d61b7bc..25b0df54 100644 --- a/src/api/ReportSubscriptionsApi.js +++ b/src/api/ReportSubscriptionsApi.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/InlineResponse4001', 'model/ReportingV3ReportSubscriptionsGet200Response', 'model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions', 'model/Reportingv3ReportDownloadsGet400Response', 'model/RequestBody1'], factory); + define(['ApiClient', 'model/CreateReportSubscriptionRequest', 'model/InlineResponse400', 'model/ReportingV3ReportSubscriptionsGet200Response', 'model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions', 'model/Reportingv3ReportDownloadsGet400Response'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('../model/InlineResponse4001'), require('../model/ReportingV3ReportSubscriptionsGet200Response'), require('../model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions'), require('../model/Reportingv3ReportDownloadsGet400Response'), require('../model/RequestBody1')); + module.exports = factory(require('../ApiClient'), require('../model/CreateReportSubscriptionRequest'), require('../model/InlineResponse400'), require('../model/ReportingV3ReportSubscriptionsGet200Response'), require('../model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions'), require('../model/Reportingv3ReportDownloadsGet400Response')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.ReportSubscriptionsApi = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse4001, root.CyberSource.ReportingV3ReportSubscriptionsGet200Response, root.CyberSource.ReportingV3ReportSubscriptionsGet200ResponseSubscriptions, root.CyberSource.Reportingv3ReportDownloadsGet400Response, root.CyberSource.RequestBody1); + root.CyberSource.ReportSubscriptionsApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreateReportSubscriptionRequest, root.CyberSource.InlineResponse400, root.CyberSource.ReportingV3ReportSubscriptionsGet200Response, root.CyberSource.ReportingV3ReportSubscriptionsGet200ResponseSubscriptions, root.CyberSource.Reportingv3ReportDownloadsGet400Response); } -}(this, function(ApiClient, InlineResponse4001, ReportingV3ReportSubscriptionsGet200Response, ReportingV3ReportSubscriptionsGet200ResponseSubscriptions, Reportingv3ReportDownloadsGet400Response, RequestBody1) { +}(this, function(ApiClient, CreateReportSubscriptionRequest, InlineResponse400, ReportingV3ReportSubscriptionsGet200Response, ReportingV3ReportSubscriptionsGet200ResponseSubscriptions, Reportingv3ReportDownloadsGet400Response) { 'use strict'; /** @@ -60,18 +60,18 @@ /** * Create Report Subscription for a report name by organization * Create a report subscription for your organization. The report name must be unique. - * @param {module:model/RequestBody1} requestBody Report subscription request payload + * @param {module:model/CreateReportSubscriptionRequest} createReportSubscriptionRequest Report subscription request payload * @param {Object} opts Optional parameters * @param {String} opts.organizationId Valid Cybersource Organization Id * @param {module:api/ReportSubscriptionsApi~createSubscriptionCallback} callback The callback function, accepting three arguments: error, data, response */ - this.createSubscription = function(requestBody, opts, callback) { + this.createSubscription = function(createReportSubscriptionRequest, opts, callback) { opts = opts || {}; - var postBody = requestBody; + var postBody = createReportSubscriptionRequest; - // verify the required parameter 'requestBody' is set - if (requestBody === undefined || requestBody === null) { - throw new Error("Missing the required parameter 'requestBody' when calling createSubscription"); + // verify the required parameter 'createReportSubscriptionRequest' is set + if (createReportSubscriptionRequest === undefined || createReportSubscriptionRequest === null) { + throw new Error("Missing the required parameter 'createReportSubscriptionRequest' when calling createSubscription"); } diff --git a/src/api/ReportsApi.js b/src/api/ReportsApi.js index 87372c33..ca01a514 100644 --- a/src/api/ReportsApi.js +++ b/src/api/ReportsApi.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/ReportingV3ReportsGet200Response', 'model/ReportingV3ReportsIdGet200Response', 'model/Reportingv3ReportDownloadsGet400Response', 'model/RequestBody'], factory); + define(['ApiClient', 'model/CreateAdhocReportRequest', 'model/ReportingV3ReportsGet200Response', 'model/ReportingV3ReportsIdGet200Response', 'model/Reportingv3ReportDownloadsGet400Response'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('../model/ReportingV3ReportsGet200Response'), require('../model/ReportingV3ReportsIdGet200Response'), require('../model/Reportingv3ReportDownloadsGet400Response'), require('../model/RequestBody')); + module.exports = factory(require('../ApiClient'), require('../model/CreateAdhocReportRequest'), require('../model/ReportingV3ReportsGet200Response'), require('../model/ReportingV3ReportsIdGet200Response'), require('../model/Reportingv3ReportDownloadsGet400Response')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.ReportsApi = factory(root.CyberSource.ApiClient, root.CyberSource.ReportingV3ReportsGet200Response, root.CyberSource.ReportingV3ReportsIdGet200Response, root.CyberSource.Reportingv3ReportDownloadsGet400Response, root.CyberSource.RequestBody); + root.CyberSource.ReportsApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreateAdhocReportRequest, root.CyberSource.ReportingV3ReportsGet200Response, root.CyberSource.ReportingV3ReportsIdGet200Response, root.CyberSource.Reportingv3ReportDownloadsGet400Response); } -}(this, function(ApiClient, ReportingV3ReportsGet200Response, ReportingV3ReportsIdGet200Response, Reportingv3ReportDownloadsGet400Response, RequestBody) { +}(this, function(ApiClient, CreateAdhocReportRequest, ReportingV3ReportsGet200Response, ReportingV3ReportsIdGet200Response, Reportingv3ReportDownloadsGet400Response) { 'use strict'; /** @@ -60,18 +60,18 @@ /** * Create Adhoc Report * 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) - * @param {module:model/RequestBody} requestBody Report subscription request payload + * @param {module:model/CreateAdhocReportRequest} createAdhocReportRequest Report subscription request payload * @param {Object} opts Optional parameters * @param {String} opts.organizationId Valid Cybersource Organization Id * @param {module:api/ReportsApi~createReportCallback} callback The callback function, accepting three arguments: error, data, response */ - this.createReport = function(requestBody, opts, callback) { + this.createReport = function(createAdhocReportRequest, opts, callback) { opts = opts || {}; - var postBody = requestBody; + var postBody = createAdhocReportRequest; - // verify the required parameter 'requestBody' is set - if (requestBody === undefined || requestBody === null) { - throw new Error("Missing the required parameter 'requestBody' when calling createReport"); + // verify the required parameter 'createAdhocReportRequest' is set + if (createAdhocReportRequest === undefined || createAdhocReportRequest === null) { + throw new Error("Missing the required parameter 'createAdhocReportRequest' when calling createReport"); } diff --git a/src/api/SearchTransactionsApi.js b/src/api/SearchTransactionsApi.js index d48a846a..cb0122a3 100644 --- a/src/api/SearchTransactionsApi.js +++ b/src/api/SearchTransactionsApi.js @@ -84,7 +84,7 @@ var authNames = []; var contentTypes = ['application/json;charset=utf-8']; - var accepts = ['*/*']; + var accepts = ['application/json;charset=utf-8']; var returnType = TssV2TransactionsPost201Response; return this.apiClient.callApi( diff --git a/src/api/SecureFileShareApi.js b/src/api/SecureFileShareApi.js index 5bf8d6cc..9b5678a4 100644 --- a/src/api/SecureFileShareApi.js +++ b/src/api/SecureFileShareApi.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/InlineResponse4001', 'model/V1FileDetailsGet200Response'], factory); + define(['ApiClient', 'model/InlineResponse400', 'model/V1FileDetailsGet200Response'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('../model/InlineResponse4001'), require('../model/V1FileDetailsGet200Response')); + module.exports = factory(require('../ApiClient'), require('../model/InlineResponse400'), require('../model/V1FileDetailsGet200Response')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.SecureFileShareApi = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse4001, root.CyberSource.V1FileDetailsGet200Response); + root.CyberSource.SecureFileShareApi = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse400, root.CyberSource.V1FileDetailsGet200Response); } -}(this, function(ApiClient, InlineResponse4001, V1FileDetailsGet200Response) { +}(this, function(ApiClient, InlineResponse400, V1FileDetailsGet200Response) { 'use strict'; /** @@ -87,7 +87,7 @@ }; var authNames = []; - var contentTypes = ['*/*']; + var contentTypes = ['application/json;charset=utf-8']; var accepts = ['application/xml', 'text/csv', 'application/pdf']; var returnType = null; @@ -144,7 +144,7 @@ }; var authNames = []; - var contentTypes = ['*/*']; + var contentTypes = ['application/json;charset=utf-8']; var accepts = ['application/hal+json']; var returnType = V1FileDetailsGet200Response; diff --git a/src/api/TransactionBatchesApi.js b/src/api/TransactionBatchesApi.js index 896bbe81..4d6f5276 100644 --- a/src/api/TransactionBatchesApi.js +++ b/src/api/TransactionBatchesApi.js @@ -58,16 +58,12 @@ */ /** - * Get transaction details for a given batch id + * Get transaction details for a given batch id * 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. * @param {String} id The batch id assigned for the template. - * @param {Object} opts Optional parameters - * @param {Date} opts.uploadDate Date in which the original batch file was uploaded. Date must be in ISO-8601 format. Please 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) **Example date format:** - yyyy-MM-dd - * @param {String} opts.status Allows you to filter by rejected response. Valid values: - Rejected * @param {module:api/TransactionBatchesApi~getTransactionBatchDetailsCallback} callback The callback function, accepting three arguments: error, data, response */ - this.getTransactionBatchDetails = function(id, opts, callback) { - opts = opts || {}; + this.getTransactionBatchDetails = function(id, callback) { var postBody = null; // verify the required parameter 'id' is set @@ -80,8 +76,6 @@ 'id': id }; var queryParams = { - 'uploadDate': opts['uploadDate'], - 'status': opts['status'] }; var headerParams = { }; diff --git a/src/index.js b/src/index.js index 8e1e5d90..5bdc9674 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/AuthReversalRequest', 'model/AuthorizationOptions', 'model/BillTo', 'model/BuyerInformation', 'model/CapturePaymentRequest', 'model/CardInfo', 'model/CreateCreditRequest', 'model/CreateDecisionManagerCaseRequest', 'model/CreateInstrumentIdentifierRequest', 'model/CreatePaymentInstrumentRequest', 'model/CreatePaymentRequest', 'model/CreateSearchRequest', 'model/DerPublicKey', 'model/Detail', 'model/EmbeddedInstrumentIdentifier', 'model/Error', 'model/ErrorBean', 'model/ErrorFieldBean', 'model/ErrorLinks', 'model/ErrorResponse', 'model/ErrorResponseWithHAL', 'model/ExistingInstrumentIdentifierId', 'model/FileBean', 'model/FileDetail', 'model/FileDetailsResponse', 'model/FlexV1KeysPost200Response', 'model/FlexV1KeysPost200ResponseDer', 'model/FlexV1KeysPost200ResponseJwk', 'model/FlexV1TokensPost200Response', 'model/Flexv1tokensCardInfo', 'model/GeneratePublicKeyRequest', 'model/Initiator', 'model/InlineResponse400', 'model/InlineResponse4001', 'model/InlineResponse4001Fields', 'model/InlineResponseDefault', 'model/InlineResponseDefaultLinks', 'model/InlineResponseDefaultLinksNext', 'model/InlineResponseDefaultResponseStatus', 'model/InlineResponseDefaultResponseStatusDetails', 'model/InstrumentIdentifier', 'model/InstrumentIdentifierBankAccount', 'model/InstrumentIdentifierCard', 'model/InstrumentIdentifierEnrollableCard', 'model/InstrumentIdentifierProcessingInformation', 'model/InstrumentIdentifierUpdate', 'model/JsonWebKey', 'model/KeyParameters', 'model/KeyResult', 'model/Link', 'model/Links', 'model/MerchantInformation', 'model/MerchantInitiatedTransaction', 'model/Metadata', 'model/Model409Link', 'model/Model409Links', 'model/OctCreatePaymentRequest', 'model/PIForIILinkFirst', 'model/PIForIILinkLast', 'model/PIForIILinkNext', 'model/PIForIILinkPrev', 'model/PIForIILinkSelf', 'model/PaymentInstrument', 'model/PaymentInstrumentBankAccount', 'model/PaymentInstrumentCard', 'model/PaymentInstrumentForInstrumentIdentifierLinks', 'model/PaymentInstrumentsArray', 'model/PaymentInstrumentsForInstrumentIdentifier', 'model/PersonalIdentification', 'model/PersonalIdentificationArray', 'model/ProcessingInformation', '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/PtsV2PaymentsCapturesPost201Response', 'model/PtsV2PaymentsCapturesPost201ResponseLinks', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformation', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PaymentsCapturesPost201ResponseProcessorInformation', 'model/PtsV2PaymentsCapturesPost400Response', 'model/PtsV2PaymentsPost201Response', 'model/PtsV2PaymentsPost201ResponseClientReferenceInformation', 'model/PtsV2PaymentsPost201ResponseErrorInformation', 'model/PtsV2PaymentsPost201ResponseErrorInformationDetails', 'model/PtsV2PaymentsPost201ResponseInstallmentInformation', 'model/PtsV2PaymentsPost201ResponseIssuerInformation', 'model/PtsV2PaymentsPost201ResponseLinks', 'model/PtsV2PaymentsPost201ResponseLinksSelf', 'model/PtsV2PaymentsPost201ResponseOrderInformation', 'model/PtsV2PaymentsPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails', 'model/PtsV2PaymentsPost201ResponsePaymentInformation', 'model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures', 'model/PtsV2PaymentsPost201ResponsePaymentInformationBank', 'model/PtsV2PaymentsPost201ResponsePaymentInformationBankAccount', 'model/PtsV2PaymentsPost201ResponsePaymentInformationCard', 'model/PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard', '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/PtsV2PaymentsPost400Response', 'model/PtsV2PaymentsPost502Response', 'model/PtsV2PaymentsRefundPost201Response', 'model/PtsV2PaymentsRefundPost201ResponseLinks', 'model/PtsV2PaymentsRefundPost201ResponseOrderInformation', 'model/PtsV2PaymentsRefundPost201ResponseProcessorInformation', 'model/PtsV2PaymentsRefundPost201ResponseRefundAmountDetails', 'model/PtsV2PaymentsRefundPost400Response', 'model/PtsV2PaymentsReversalsPost201Response', 'model/PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation', 'model/PtsV2PaymentsReversalsPost201ResponseIssuerInformation', 'model/PtsV2PaymentsReversalsPost201ResponseLinks', 'model/PtsV2PaymentsReversalsPost201ResponseProcessorInformation', 'model/PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails', 'model/PtsV2PaymentsReversalsPost400Response', 'model/PtsV2PaymentsVoidsPost201Response', '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/Ptsv2creditsPointOfSaleInformation', 'model/Ptsv2creditsPointOfSaleInformationEmv', 'model/Ptsv2creditsProcessingInformation', 'model/Ptsv2creditsProcessingInformationBankTransferOptions', 'model/Ptsv2paymentsAggregatorInformation', 'model/Ptsv2paymentsAggregatorInformationSubMerchant', 'model/Ptsv2paymentsBuyerInformation', 'model/Ptsv2paymentsBuyerInformationPersonalIdentification', 'model/Ptsv2paymentsClientReferenceInformation', 'model/Ptsv2paymentsClientReferenceInformationPartner', 'model/Ptsv2paymentsConsumerAuthenticationInformation', 'model/Ptsv2paymentsDeviceInformation', 'model/Ptsv2paymentsInstallmentInformation', 'model/Ptsv2paymentsIssuerInformation', 'model/Ptsv2paymentsMerchantDefinedInformation', 'model/Ptsv2paymentsMerchantInformation', 'model/Ptsv2paymentsMerchantInformationMerchantDescriptor', 'model/Ptsv2paymentsMerchantInformationServiceFeeDescriptor', 'model/Ptsv2paymentsOrderInformation', 'model/Ptsv2paymentsOrderInformationAmountDetails', 'model/Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts', 'model/Ptsv2paymentsOrderInformationAmountDetailsSurcharge', 'model/Ptsv2paymentsOrderInformationAmountDetailsTaxDetails', 'model/Ptsv2paymentsOrderInformationBillTo', 'model/Ptsv2paymentsOrderInformationInvoiceDetails', 'model/Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum', 'model/Ptsv2paymentsOrderInformationLineItems', 'model/Ptsv2paymentsOrderInformationShipTo', 'model/Ptsv2paymentsOrderInformationShippingDetails', 'model/Ptsv2paymentsPaymentInformation', 'model/Ptsv2paymentsPaymentInformationBank', 'model/Ptsv2paymentsPaymentInformationBankAccount', 'model/Ptsv2paymentsPaymentInformationCard', 'model/Ptsv2paymentsPaymentInformationCustomer', 'model/Ptsv2paymentsPaymentInformationFluidData', 'model/Ptsv2paymentsPaymentInformationTokenizedCard', 'model/Ptsv2paymentsPointOfSaleInformation', 'model/Ptsv2paymentsPointOfSaleInformationEmv', 'model/Ptsv2paymentsProcessingInformation', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction', 'model/Ptsv2paymentsProcessingInformationBankTransferOptions', 'model/Ptsv2paymentsProcessingInformationCaptureOptions', 'model/Ptsv2paymentsProcessingInformationRecurringOptions', 'model/Ptsv2paymentsRecipientInformation', 'model/Ptsv2paymentsidcapturesAggregatorInformation', 'model/Ptsv2paymentsidcapturesAggregatorInformationSubMerchant', 'model/Ptsv2paymentsidcapturesBuyerInformation', 'model/Ptsv2paymentsidcapturesInstallmentInformation', 'model/Ptsv2paymentsidcapturesMerchantInformation', 'model/Ptsv2paymentsidcapturesOrderInformation', 'model/Ptsv2paymentsidcapturesOrderInformationAmountDetails', 'model/Ptsv2paymentsidcapturesOrderInformationBillTo', 'model/Ptsv2paymentsidcapturesOrderInformationInvoiceDetails', 'model/Ptsv2paymentsidcapturesOrderInformationShipTo', 'model/Ptsv2paymentsidcapturesOrderInformationShippingDetails', 'model/Ptsv2paymentsidcapturesPaymentInformation', 'model/Ptsv2paymentsidcapturesPointOfSaleInformation', 'model/Ptsv2paymentsidcapturesPointOfSaleInformationEmv', 'model/Ptsv2paymentsidcapturesProcessingInformation', 'model/Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsidcapturesProcessingInformationCaptureOptions', 'model/Ptsv2paymentsidrefundsMerchantInformation', 'model/Ptsv2paymentsidrefundsOrderInformation', 'model/Ptsv2paymentsidrefundsOrderInformationLineItems', 'model/Ptsv2paymentsidrefundsPaymentInformation', '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/Ptsv2payoutsClientReferenceInformation', 'model/Ptsv2payoutsMerchantInformation', 'model/Ptsv2payoutsMerchantInformationMerchantDescriptor', 'model/Ptsv2payoutsOrderInformation', 'model/Ptsv2payoutsOrderInformationAmountDetails', 'model/Ptsv2payoutsOrderInformationAmountDetailsSurcharge', 'model/Ptsv2payoutsOrderInformationBillTo', 'model/Ptsv2payoutsPaymentInformation', 'model/Ptsv2payoutsPaymentInformationCard', 'model/Ptsv2payoutsProcessingInformation', 'model/Ptsv2payoutsProcessingInformationPayoutsOptions', 'model/Ptsv2payoutsRecipientInformation', 'model/Ptsv2payoutsSenderInformation', 'model/Ptsv2payoutsSenderInformationAccount', 'model/RefundCaptureRequest', 'model/RefundPaymentRequest', 'model/ReportingV3ConversionDetailsGet200Response', 'model/ReportingV3ConversionDetailsGet200ResponseConversionDetails', 'model/ReportingV3ConversionDetailsGet200ResponseNotes', '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/ReportingV3ReportSubscriptionsGet200Response', 'model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions', 'model/ReportingV3ReportsGet200Response', 'model/ReportingV3ReportsGet200ResponseReportSearchResults', 'model/ReportingV3ReportsIdGet200Response', 'model/Reportingv3ReportDownloadsGet400Response', 'model/Reportingv3ReportDownloadsGet400ResponseDetails', 'model/Reportingv3reportsReportPreferences', 'model/RequestBody', 'model/RequestBody1', 'model/ResponseStatus', 'model/ResponseStatusDetails', 'model/RiskV1DecisionsPost201Response', 'model/RiskV1DecisionsPost201ResponsePaymentInformation', 'model/RiskV1DecisionsPost201ResponseRiskInformation', 'model/RiskV1DecisionsPost201ResponseRiskInformationInfoCodes', 'model/RiskV1DecisionsPost201ResponseRiskInformationIpAddress', 'model/RiskV1DecisionsPost201ResponseRiskInformationProfile', 'model/RiskV1DecisionsPost201ResponseRiskInformationProviders', 'model/RiskV1DecisionsPost201ResponseRiskInformationProvidersProviderName', 'model/RiskV1DecisionsPost201ResponseRiskInformationRules', 'model/RiskV1DecisionsPost201ResponseRiskInformationScore', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravel', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravelActualFinalDestination', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDeparture', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDestination', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravelLastDestination', 'model/RiskV1DecisionsPost201ResponseRiskInformationVelocity', 'model/RiskV1DecisionsPost201ResponseRiskInformationVelocityMorphing', 'model/RiskV1DecisionsPost400Response', 'model/Riskv1decisionsBuyerInformation', 'model/Riskv1decisionsCardVerification', 'model/Riskv1decisionsClientReferenceInformation', 'model/Riskv1decisionsDeviceInformation', 'model/Riskv1decisionsMerchantDefinedInformation', 'model/Riskv1decisionsOrderInformation', 'model/Riskv1decisionsOrderInformationAmountDetails', 'model/Riskv1decisionsOrderInformationBillTo', 'model/Riskv1decisionsOrderInformationLineItems', 'model/Riskv1decisionsOrderInformationPassenger', 'model/Riskv1decisionsOrderInformationShipTo', 'model/Riskv1decisionsOrderInformationShippingDetails', 'model/Riskv1decisionsPaymentInformation', 'model/Riskv1decisionsPaymentInformationCard', 'model/Riskv1decisionsPaymentInformationTokenizedCard', 'model/Riskv1decisionsProcessorInformation', 'model/Riskv1decisionsProcessorInformationAvs', 'model/Riskv1decisionsRiskInformation', 'model/Riskv1decisionsRiskInformationProfile', 'model/Riskv1decisionsTravelInformation', 'model/Riskv1decisionsTravelInformationLegs', 'model/SelfLinkBean', 'model/TmsV1InstrumentIdentifiersDelete409Response', 'model/TmsV1InstrumentIdentifiersDelete409ResponseLinks', 'model/TmsV1InstrumentIdentifiersDelete409ResponseLinksPaymentInstruments', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbedded', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBankAccount', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBillTo', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformation', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationIssuedBy', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationPersonalIdentification', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedCard', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedInstrumentIdentifier', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformation', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformationMerchantDescriptor', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformation', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformationBankTransferOptions', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinks', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksFirst', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksLast', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksNext', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksPrev', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksSelf', 'model/TmsV1InstrumentIdentifiersPost200Response', 'model/TmsV1InstrumentIdentifiersPost200ResponseCard', 'model/TmsV1InstrumentIdentifiersPost200ResponseLinks', 'model/TmsV1InstrumentIdentifiersPost200ResponseLinksSelf', 'model/TmsV1InstrumentIdentifiersPost200ResponseMetadata', 'model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformation', 'model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptions', 'model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiator', 'model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction', 'model/Tmsv1instrumentidentifiersBankAccount', 'model/Tmsv1instrumentidentifiersBillTo', 'model/Tmsv1instrumentidentifiersCard', 'model/Tmsv1instrumentidentifiersDetails', 'model/TokenizeParameters', 'model/TokenizeRequest', 'model/TokenizeResult', 'model/TssV2TransactionsGet200Response', 'model/TssV2TransactionsGet200ResponseApplicationInformation', 'model/TssV2TransactionsGet200ResponseApplicationInformationApplications', 'model/TssV2TransactionsGet200ResponseBuyerInformation', 'model/TssV2TransactionsGet200ResponseClientReferenceInformation', 'model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformation', 'model/TssV2TransactionsGet200ResponseDeviceInformation', 'model/TssV2TransactionsGet200ResponseErrorInformation', 'model/TssV2TransactionsGet200ResponseFraudMarkingInformation', 'model/TssV2TransactionsGet200ResponseInstallmentInformation', 'model/TssV2TransactionsGet200ResponseLinks', 'model/TssV2TransactionsGet200ResponseMerchantInformation', 'model/TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor', 'model/TssV2TransactionsGet200ResponseOrderInformation', 'model/TssV2TransactionsGet200ResponseOrderInformationAmountDetails', 'model/TssV2TransactionsGet200ResponseOrderInformationBillTo', 'model/TssV2TransactionsGet200ResponseOrderInformationLineItems', 'model/TssV2TransactionsGet200ResponseOrderInformationShipTo', 'model/TssV2TransactionsGet200ResponseOrderInformationShippingDetails', 'model/TssV2TransactionsGet200ResponsePaymentInformation', 'model/TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures', 'model/TssV2TransactionsGet200ResponsePaymentInformationBank', 'model/TssV2TransactionsGet200ResponsePaymentInformationBankAccount', 'model/TssV2TransactionsGet200ResponsePaymentInformationBankMandate', 'model/TssV2TransactionsGet200ResponsePaymentInformationCard', 'model/TssV2TransactionsGet200ResponsePaymentInformationInvoice', 'model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType', 'model/TssV2TransactionsGet200ResponsePaymentInformationPaymentTypeFundingSource', 'model/TssV2TransactionsGet200ResponsePointOfSaleInformation', 'model/TssV2TransactionsGet200ResponseProcessingInformation', 'model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions', 'model/TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions', 'model/TssV2TransactionsGet200ResponseProcessorInformation', 'model/TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults', 'model/TssV2TransactionsGet200ResponseProcessorInformationProcessor', 'model/TssV2TransactionsGet200ResponseRiskInformation', 'model/TssV2TransactionsGet200ResponseRiskInformationProfile', 'model/TssV2TransactionsGet200ResponseRiskInformationRules', 'model/TssV2TransactionsGet200ResponseRiskInformationScore', 'model/TssV2TransactionsGet200ResponseSenderInformation', 'model/TssV2TransactionsPost201Response', 'model/TssV2TransactionsPost201ResponseEmbedded', 'model/TssV2TransactionsPost201ResponseEmbeddedBuyerInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedDeviceInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedLinks', 'model/TssV2TransactionsPost201ResponseEmbeddedMerchantInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard', '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/UpdateInstrumentIdentifierRequest', 'model/UpdatePaymentInstrumentRequest', 'model/V1FileDetailsGet200Response', 'model/V1FileDetailsGet200ResponseFileDetails', 'model/V1FileDetailsGet200ResponseLinks', 'model/V1FileDetailsGet200ResponseLinksFiles', 'model/V1FileDetailsGet200ResponseLinksSelf', 'model/VoidCaptureRequest', 'model/VoidCreditRequest', 'model/VoidPaymentRequest', 'model/VoidRefundRequest', 'api/CaptureApi', 'api/ConversionDetailsApi', 'api/CreditApi', 'api/DecisionManagerApi', 'api/DownloadDTDApi', 'api/DownloadXSDApi', 'api/InstrumentIdentifierApi', 'api/KeyGenerationApi', 'api/NetFundingsApi', 'api/NotificationOfChangesApi', 'api/PaymentBatchSummariesApi', 'api/PaymentInstrumentApi', 'api/PaymentsApi', 'api/PayoutsApi', 'api/PurchaseAndRefundDetailsApi', 'api/RefundApi', 'api/ReportDefinitionsApi', 'api/ReportDownloadsApi', 'api/ReportSubscriptionsApi', 'api/ReportsApi', 'api/ReversalApi', 'api/SearchTransactionsApi', 'api/SecureFileShareApi', 'api/TokenizationApi', 'api/TransactionBatchesApi', 'api/TransactionDetailsApi', 'api/UserManagementApi', 'api/VoidApi'], factory); + define(['ApiClient', 'model/AuthReversalRequest', 'model/AuthorizationOptions', 'model/BillTo', 'model/BuyerInformation', 'model/CapturePaymentRequest', 'model/CardInfo', 'model/CreateAdhocReportRequest', 'model/CreateCreditRequest', 'model/CreateDecisionManagerCaseRequest', 'model/CreateInstrumentIdentifierRequest', 'model/CreatePaymentInstrumentRequest', 'model/CreatePaymentRequest', 'model/CreateReportSubscriptionRequest', 'model/CreateSearchRequest', 'model/DerPublicKey', 'model/Detail', 'model/EmbeddedInstrumentIdentifier', 'model/Error', 'model/ErrorBean', 'model/ErrorFieldBean', 'model/ErrorLinks', 'model/ErrorResponse', 'model/ErrorResponseWithHAL', 'model/ExistingInstrumentIdentifierId', 'model/FileBean', 'model/FileDetail', 'model/FileDetailsResponse', 'model/FlexV1KeysPost200Response', 'model/FlexV1KeysPost200ResponseDer', 'model/FlexV1KeysPost200ResponseJwk', 'model/FlexV1TokensPost200Response', 'model/Flexv1tokensCardInfo', 'model/GeneratePublicKeyRequest', 'model/Initiator', 'model/InlineResponse400', 'model/InlineResponse4001', 'model/InlineResponse400Fields', 'model/InlineResponseDefault', 'model/InlineResponseDefaultLinks', 'model/InlineResponseDefaultLinksNext', 'model/InlineResponseDefaultResponseStatus', 'model/InlineResponseDefaultResponseStatusDetails', 'model/InstrumentIdentifier', 'model/InstrumentIdentifierBankAccount', 'model/InstrumentIdentifierCard', 'model/InstrumentIdentifierEnrollableCard', 'model/InstrumentIdentifierProcessingInformation', 'model/InstrumentIdentifierUpdate', 'model/JsonWebKey', 'model/KeyParameters', 'model/KeyResult', 'model/Link', 'model/Links', 'model/MerchantInformation', 'model/MerchantInitiatedTransaction', 'model/Metadata', 'model/Model409Link', 'model/Model409Links', 'model/OctCreatePaymentRequest', 'model/PIForIILinkFirst', 'model/PIForIILinkLast', 'model/PIForIILinkNext', 'model/PIForIILinkPrev', 'model/PIForIILinkSelf', 'model/PaymentInstrument', 'model/PaymentInstrumentBankAccount', 'model/PaymentInstrumentCard', 'model/PaymentInstrumentForInstrumentIdentifierLinks', 'model/PaymentInstrumentsArray', 'model/PaymentInstrumentsForInstrumentIdentifier', 'model/PersonalIdentification', 'model/PersonalIdentificationArray', 'model/ProcessingInformation', '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/PtsV2PaymentsCapturesPost201Response', 'model/PtsV2PaymentsCapturesPost201ResponseLinks', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformation', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PaymentsCapturesPost201ResponseProcessorInformation', 'model/PtsV2PaymentsCapturesPost400Response', 'model/PtsV2PaymentsPost201Response', 'model/PtsV2PaymentsPost201ResponseClientReferenceInformation', 'model/PtsV2PaymentsPost201ResponseErrorInformation', 'model/PtsV2PaymentsPost201ResponseErrorInformationDetails', 'model/PtsV2PaymentsPost201ResponseInstallmentInformation', 'model/PtsV2PaymentsPost201ResponseIssuerInformation', 'model/PtsV2PaymentsPost201ResponseLinks', 'model/PtsV2PaymentsPost201ResponseLinksSelf', 'model/PtsV2PaymentsPost201ResponseOrderInformation', 'model/PtsV2PaymentsPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails', 'model/PtsV2PaymentsPost201ResponsePaymentInformation', 'model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures', 'model/PtsV2PaymentsPost201ResponsePaymentInformationBank', 'model/PtsV2PaymentsPost201ResponsePaymentInformationBankAccount', 'model/PtsV2PaymentsPost201ResponsePaymentInformationCard', 'model/PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard', '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/PtsV2PaymentsPost400Response', 'model/PtsV2PaymentsPost502Response', 'model/PtsV2PaymentsRefundPost201Response', 'model/PtsV2PaymentsRefundPost201ResponseLinks', 'model/PtsV2PaymentsRefundPost201ResponseOrderInformation', 'model/PtsV2PaymentsRefundPost201ResponseProcessorInformation', 'model/PtsV2PaymentsRefundPost201ResponseRefundAmountDetails', 'model/PtsV2PaymentsRefundPost400Response', 'model/PtsV2PaymentsReversalsPost201Response', 'model/PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation', 'model/PtsV2PaymentsReversalsPost201ResponseIssuerInformation', 'model/PtsV2PaymentsReversalsPost201ResponseLinks', 'model/PtsV2PaymentsReversalsPost201ResponseProcessorInformation', 'model/PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails', 'model/PtsV2PaymentsReversalsPost400Response', 'model/PtsV2PaymentsVoidsPost201Response', '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/Ptsv2creditsPointOfSaleInformation', 'model/Ptsv2creditsPointOfSaleInformationEmv', 'model/Ptsv2creditsProcessingInformation', 'model/Ptsv2creditsProcessingInformationBankTransferOptions', 'model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer', 'model/Ptsv2creditsProcessingInformationPurchaseOptions', 'model/Ptsv2paymentsAggregatorInformation', 'model/Ptsv2paymentsAggregatorInformationSubMerchant', 'model/Ptsv2paymentsBuyerInformation', 'model/Ptsv2paymentsBuyerInformationPersonalIdentification', 'model/Ptsv2paymentsClientReferenceInformation', 'model/Ptsv2paymentsClientReferenceInformationPartner', 'model/Ptsv2paymentsConsumerAuthenticationInformation', 'model/Ptsv2paymentsDeviceInformation', 'model/Ptsv2paymentsInstallmentInformation', 'model/Ptsv2paymentsIssuerInformation', 'model/Ptsv2paymentsMerchantDefinedInformation', 'model/Ptsv2paymentsMerchantInformation', 'model/Ptsv2paymentsMerchantInformationMerchantDescriptor', 'model/Ptsv2paymentsMerchantInformationServiceFeeDescriptor', 'model/Ptsv2paymentsOrderInformation', 'model/Ptsv2paymentsOrderInformationAmountDetails', 'model/Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts', 'model/Ptsv2paymentsOrderInformationAmountDetailsSurcharge', 'model/Ptsv2paymentsOrderInformationAmountDetailsTaxDetails', 'model/Ptsv2paymentsOrderInformationBillTo', 'model/Ptsv2paymentsOrderInformationInvoiceDetails', 'model/Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum', 'model/Ptsv2paymentsOrderInformationLineItems', 'model/Ptsv2paymentsOrderInformationShipTo', 'model/Ptsv2paymentsOrderInformationShippingDetails', 'model/Ptsv2paymentsPaymentInformation', 'model/Ptsv2paymentsPaymentInformationBank', 'model/Ptsv2paymentsPaymentInformationBankAccount', 'model/Ptsv2paymentsPaymentInformationCard', 'model/Ptsv2paymentsPaymentInformationCustomer', 'model/Ptsv2paymentsPaymentInformationFluidData', 'model/Ptsv2paymentsPaymentInformationPaymentType', 'model/Ptsv2paymentsPaymentInformationPaymentTypeMethod', 'model/Ptsv2paymentsPaymentInformationTokenizedCard', 'model/Ptsv2paymentsPointOfSaleInformation', 'model/Ptsv2paymentsPointOfSaleInformationEmv', 'model/Ptsv2paymentsProcessingInformation', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction', 'model/Ptsv2paymentsProcessingInformationBankTransferOptions', 'model/Ptsv2paymentsProcessingInformationCaptureOptions', 'model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer', 'model/Ptsv2paymentsProcessingInformationPurchaseOptions', 'model/Ptsv2paymentsProcessingInformationRecurringOptions', 'model/Ptsv2paymentsRecipientInformation', 'model/Ptsv2paymentsidcapturesAggregatorInformation', 'model/Ptsv2paymentsidcapturesAggregatorInformationSubMerchant', 'model/Ptsv2paymentsidcapturesBuyerInformation', 'model/Ptsv2paymentsidcapturesInstallmentInformation', 'model/Ptsv2paymentsidcapturesMerchantInformation', 'model/Ptsv2paymentsidcapturesOrderInformation', 'model/Ptsv2paymentsidcapturesOrderInformationAmountDetails', 'model/Ptsv2paymentsidcapturesOrderInformationBillTo', 'model/Ptsv2paymentsidcapturesOrderInformationInvoiceDetails', 'model/Ptsv2paymentsidcapturesOrderInformationShipTo', 'model/Ptsv2paymentsidcapturesOrderInformationShippingDetails', 'model/Ptsv2paymentsidcapturesPaymentInformation', 'model/Ptsv2paymentsidcapturesPointOfSaleInformation', 'model/Ptsv2paymentsidcapturesPointOfSaleInformationEmv', 'model/Ptsv2paymentsidcapturesProcessingInformation', 'model/Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsidcapturesProcessingInformationCaptureOptions', 'model/Ptsv2paymentsidrefundsMerchantInformation', 'model/Ptsv2paymentsidrefundsOrderInformation', 'model/Ptsv2paymentsidrefundsOrderInformationLineItems', 'model/Ptsv2paymentsidrefundsPaymentInformation', '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/Ptsv2paymentsidvoidsPaymentInformation', 'model/Ptsv2payoutsClientReferenceInformation', 'model/Ptsv2payoutsMerchantInformation', 'model/Ptsv2payoutsMerchantInformationMerchantDescriptor', 'model/Ptsv2payoutsOrderInformation', 'model/Ptsv2payoutsOrderInformationAmountDetails', 'model/Ptsv2payoutsOrderInformationAmountDetailsSurcharge', 'model/Ptsv2payoutsOrderInformationBillTo', 'model/Ptsv2payoutsPaymentInformation', 'model/Ptsv2payoutsPaymentInformationCard', 'model/Ptsv2payoutsProcessingInformation', 'model/Ptsv2payoutsProcessingInformationPayoutsOptions', 'model/Ptsv2payoutsRecipientInformation', 'model/Ptsv2payoutsSenderInformation', 'model/Ptsv2payoutsSenderInformationAccount', 'model/RefundCaptureRequest', 'model/RefundPaymentRequest', 'model/ReportingV3ConversionDetailsGet200Response', 'model/ReportingV3ConversionDetailsGet200ResponseConversionDetails', 'model/ReportingV3ConversionDetailsGet200ResponseNotes', '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/ReportingV3ReportSubscriptionsGet200Response', 'model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions', 'model/ReportingV3ReportsGet200Response', 'model/ReportingV3ReportsGet200ResponseReportSearchResults', 'model/ReportingV3ReportsIdGet200Response', 'model/Reportingv3ReportDownloadsGet400Response', 'model/Reportingv3ReportDownloadsGet400ResponseDetails', 'model/Reportingv3reportsReportPreferences', 'model/ResponseStatus', 'model/ResponseStatusDetails', 'model/RiskV1DecisionsPost201Response', 'model/RiskV1DecisionsPost201ResponsePaymentInformation', 'model/RiskV1DecisionsPost201ResponseRiskInformation', 'model/RiskV1DecisionsPost201ResponseRiskInformationInfoCodes', 'model/RiskV1DecisionsPost201ResponseRiskInformationIpAddress', 'model/RiskV1DecisionsPost201ResponseRiskInformationProfile', 'model/RiskV1DecisionsPost201ResponseRiskInformationProviders', 'model/RiskV1DecisionsPost201ResponseRiskInformationProvidersProviderName', 'model/RiskV1DecisionsPost201ResponseRiskInformationRules', 'model/RiskV1DecisionsPost201ResponseRiskInformationScore', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravel', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravelActualFinalDestination', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDeparture', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDestination', 'model/RiskV1DecisionsPost201ResponseRiskInformationTravelLastDestination', 'model/RiskV1DecisionsPost201ResponseRiskInformationVelocity', 'model/RiskV1DecisionsPost201ResponseRiskInformationVelocityMorphing', 'model/RiskV1DecisionsPost400Response', 'model/Riskv1decisionsBuyerInformation', 'model/Riskv1decisionsCardVerification', 'model/Riskv1decisionsClientReferenceInformation', 'model/Riskv1decisionsDeviceInformation', 'model/Riskv1decisionsMerchantDefinedInformation', 'model/Riskv1decisionsOrderInformation', 'model/Riskv1decisionsOrderInformationAmountDetails', 'model/Riskv1decisionsOrderInformationBillTo', 'model/Riskv1decisionsOrderInformationLineItems', 'model/Riskv1decisionsOrderInformationPassenger', 'model/Riskv1decisionsOrderInformationShipTo', 'model/Riskv1decisionsOrderInformationShippingDetails', 'model/Riskv1decisionsPaymentInformation', 'model/Riskv1decisionsPaymentInformationCard', 'model/Riskv1decisionsPaymentInformationTokenizedCard', 'model/Riskv1decisionsProcessorInformation', 'model/Riskv1decisionsProcessorInformationAvs', 'model/Riskv1decisionsRiskInformation', 'model/Riskv1decisionsRiskInformationProfile', 'model/Riskv1decisionsTravelInformation', 'model/Riskv1decisionsTravelInformationLegs', 'model/SelfLinkBean', 'model/TmsV1InstrumentIdentifiersDelete409Response', 'model/TmsV1InstrumentIdentifiersDelete409ResponseLinks', 'model/TmsV1InstrumentIdentifiersDelete409ResponseLinksPaymentInstruments', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbedded', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBankAccount', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBillTo', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformation', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationIssuedBy', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationPersonalIdentification', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedCard', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedInstrumentIdentifier', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformation', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformationMerchantDescriptor', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformation', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformationBankTransferOptions', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinks', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksFirst', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksLast', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksNext', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksPrev', 'model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksSelf', 'model/TmsV1InstrumentIdentifiersPost200Response', 'model/TmsV1InstrumentIdentifiersPost200ResponseCard', 'model/TmsV1InstrumentIdentifiersPost200ResponseLinks', 'model/TmsV1InstrumentIdentifiersPost200ResponseLinksSelf', 'model/TmsV1InstrumentIdentifiersPost200ResponseMetadata', 'model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformation', 'model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptions', 'model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiator', 'model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction', 'model/Tmsv1instrumentidentifiersBankAccount', 'model/Tmsv1instrumentidentifiersBillTo', 'model/Tmsv1instrumentidentifiersCard', 'model/Tmsv1instrumentidentifiersDetails', 'model/TokenizeParameters', 'model/TokenizeRequest', 'model/TokenizeResult', 'model/TssV2TransactionsGet200Response', 'model/TssV2TransactionsGet200ResponseApplicationInformation', 'model/TssV2TransactionsGet200ResponseApplicationInformationApplications', 'model/TssV2TransactionsGet200ResponseBuyerInformation', 'model/TssV2TransactionsGet200ResponseClientReferenceInformation', 'model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformation', 'model/TssV2TransactionsGet200ResponseDeviceInformation', 'model/TssV2TransactionsGet200ResponseErrorInformation', 'model/TssV2TransactionsGet200ResponseFraudMarkingInformation', 'model/TssV2TransactionsGet200ResponseInstallmentInformation', 'model/TssV2TransactionsGet200ResponseLinks', 'model/TssV2TransactionsGet200ResponseMerchantInformation', 'model/TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor', 'model/TssV2TransactionsGet200ResponseOrderInformation', 'model/TssV2TransactionsGet200ResponseOrderInformationAmountDetails', 'model/TssV2TransactionsGet200ResponseOrderInformationBillTo', 'model/TssV2TransactionsGet200ResponseOrderInformationLineItems', 'model/TssV2TransactionsGet200ResponseOrderInformationShipTo', 'model/TssV2TransactionsGet200ResponseOrderInformationShippingDetails', 'model/TssV2TransactionsGet200ResponsePaymentInformation', 'model/TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures', 'model/TssV2TransactionsGet200ResponsePaymentInformationBank', 'model/TssV2TransactionsGet200ResponsePaymentInformationBankAccount', 'model/TssV2TransactionsGet200ResponsePaymentInformationBankMandate', 'model/TssV2TransactionsGet200ResponsePaymentInformationCard', 'model/TssV2TransactionsGet200ResponsePaymentInformationInvoice', 'model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType', 'model/TssV2TransactionsGet200ResponsePaymentInformationPaymentTypeFundingSource', 'model/TssV2TransactionsGet200ResponsePointOfSaleInformation', 'model/TssV2TransactionsGet200ResponseProcessingInformation', 'model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions', 'model/TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions', 'model/TssV2TransactionsGet200ResponseProcessorInformation', 'model/TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults', 'model/TssV2TransactionsGet200ResponseProcessorInformationProcessor', 'model/TssV2TransactionsGet200ResponseRiskInformation', 'model/TssV2TransactionsGet200ResponseRiskInformationProfile', 'model/TssV2TransactionsGet200ResponseRiskInformationRules', 'model/TssV2TransactionsGet200ResponseRiskInformationScore', 'model/TssV2TransactionsGet200ResponseSenderInformation', 'model/TssV2TransactionsPost201Response', 'model/TssV2TransactionsPost201ResponseEmbedded', 'model/TssV2TransactionsPost201ResponseEmbeddedBuyerInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedDeviceInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedLinks', 'model/TssV2TransactionsPost201ResponseEmbeddedMerchantInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard', '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/UpdateInstrumentIdentifierRequest', 'model/UpdatePaymentInstrumentRequest', 'model/V1FileDetailsGet200Response', 'model/V1FileDetailsGet200ResponseFileDetails', 'model/V1FileDetailsGet200ResponseLinks', 'model/V1FileDetailsGet200ResponseLinksFiles', 'model/V1FileDetailsGet200ResponseLinksSelf', 'model/VoidCaptureRequest', 'model/VoidCreditRequest', 'model/VoidPaymentRequest', 'model/VoidRefundRequest', 'api/CaptureApi', 'api/ConversionDetailsApi', 'api/CreditApi', 'api/DecisionManagerApi', 'api/DownloadDTDApi', 'api/DownloadXSDApi', 'api/InstrumentIdentifierApi', 'api/KeyGenerationApi', 'api/NetFundingsApi', 'api/NotificationOfChangesApi', 'api/PaymentBatchSummariesApi', 'api/PaymentInstrumentApi', 'api/PaymentsApi', 'api/PayoutsApi', 'api/PurchaseAndRefundDetailsApi', 'api/RefundApi', 'api/ReportDefinitionsApi', 'api/ReportDownloadsApi', 'api/ReportSubscriptionsApi', 'api/ReportsApi', 'api/ReversalApi', 'api/SearchTransactionsApi', 'api/SecureFileShareApi', 'api/TokenizationApi', 'api/TransactionBatchesApi', 'api/TransactionDetailsApi', 'api/UserManagementApi', 'api/VoidApi'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('./ApiClient'), require('./model/AuthReversalRequest'), require('./model/AuthorizationOptions'), require('./model/BillTo'), require('./model/BuyerInformation'), require('./model/CapturePaymentRequest'), require('./model/CardInfo'), require('./model/CreateCreditRequest'), require('./model/CreateDecisionManagerCaseRequest'), require('./model/CreateInstrumentIdentifierRequest'), require('./model/CreatePaymentInstrumentRequest'), require('./model/CreatePaymentRequest'), require('./model/CreateSearchRequest'), require('./model/DerPublicKey'), require('./model/Detail'), require('./model/EmbeddedInstrumentIdentifier'), require('./model/Error'), require('./model/ErrorBean'), require('./model/ErrorFieldBean'), require('./model/ErrorLinks'), require('./model/ErrorResponse'), require('./model/ErrorResponseWithHAL'), require('./model/ExistingInstrumentIdentifierId'), require('./model/FileBean'), require('./model/FileDetail'), require('./model/FileDetailsResponse'), require('./model/FlexV1KeysPost200Response'), require('./model/FlexV1KeysPost200ResponseDer'), require('./model/FlexV1KeysPost200ResponseJwk'), require('./model/FlexV1TokensPost200Response'), require('./model/Flexv1tokensCardInfo'), require('./model/GeneratePublicKeyRequest'), require('./model/Initiator'), require('./model/InlineResponse400'), require('./model/InlineResponse4001'), require('./model/InlineResponse4001Fields'), require('./model/InlineResponseDefault'), require('./model/InlineResponseDefaultLinks'), require('./model/InlineResponseDefaultLinksNext'), require('./model/InlineResponseDefaultResponseStatus'), require('./model/InlineResponseDefaultResponseStatusDetails'), require('./model/InstrumentIdentifier'), require('./model/InstrumentIdentifierBankAccount'), require('./model/InstrumentIdentifierCard'), require('./model/InstrumentIdentifierEnrollableCard'), require('./model/InstrumentIdentifierProcessingInformation'), require('./model/InstrumentIdentifierUpdate'), require('./model/JsonWebKey'), require('./model/KeyParameters'), require('./model/KeyResult'), require('./model/Link'), require('./model/Links'), require('./model/MerchantInformation'), require('./model/MerchantInitiatedTransaction'), require('./model/Metadata'), require('./model/Model409Link'), require('./model/Model409Links'), require('./model/OctCreatePaymentRequest'), require('./model/PIForIILinkFirst'), require('./model/PIForIILinkLast'), require('./model/PIForIILinkNext'), require('./model/PIForIILinkPrev'), require('./model/PIForIILinkSelf'), require('./model/PaymentInstrument'), require('./model/PaymentInstrumentBankAccount'), require('./model/PaymentInstrumentCard'), require('./model/PaymentInstrumentForInstrumentIdentifierLinks'), require('./model/PaymentInstrumentsArray'), require('./model/PaymentInstrumentsForInstrumentIdentifier'), require('./model/PersonalIdentification'), require('./model/PersonalIdentificationArray'), require('./model/ProcessingInformation'), 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/PtsV2PaymentsCapturesPost201Response'), require('./model/PtsV2PaymentsCapturesPost201ResponseLinks'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformation'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails'), require('./model/PtsV2PaymentsCapturesPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsCapturesPost400Response'), require('./model/PtsV2PaymentsPost201Response'), require('./model/PtsV2PaymentsPost201ResponseClientReferenceInformation'), 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/PtsV2PaymentsPost201ResponsePaymentInformation'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationBank'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationBankAccount'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationCard'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard'), 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/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/PtsV2PaymentsReversalsPost201ResponseLinks'), require('./model/PtsV2PaymentsReversalsPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails'), require('./model/PtsV2PaymentsReversalsPost400Response'), require('./model/PtsV2PaymentsVoidsPost201Response'), 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/Ptsv2creditsPointOfSaleInformation'), require('./model/Ptsv2creditsPointOfSaleInformationEmv'), require('./model/Ptsv2creditsProcessingInformation'), require('./model/Ptsv2creditsProcessingInformationBankTransferOptions'), require('./model/Ptsv2paymentsAggregatorInformation'), require('./model/Ptsv2paymentsAggregatorInformationSubMerchant'), require('./model/Ptsv2paymentsBuyerInformation'), require('./model/Ptsv2paymentsBuyerInformationPersonalIdentification'), require('./model/Ptsv2paymentsClientReferenceInformation'), require('./model/Ptsv2paymentsClientReferenceInformationPartner'), require('./model/Ptsv2paymentsConsumerAuthenticationInformation'), require('./model/Ptsv2paymentsDeviceInformation'), require('./model/Ptsv2paymentsInstallmentInformation'), 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/Ptsv2paymentsOrderInformationAmountDetailsSurcharge'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsTaxDetails'), require('./model/Ptsv2paymentsOrderInformationBillTo'), require('./model/Ptsv2paymentsOrderInformationInvoiceDetails'), require('./model/Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum'), require('./model/Ptsv2paymentsOrderInformationLineItems'), require('./model/Ptsv2paymentsOrderInformationShipTo'), require('./model/Ptsv2paymentsOrderInformationShippingDetails'), require('./model/Ptsv2paymentsPaymentInformation'), require('./model/Ptsv2paymentsPaymentInformationBank'), require('./model/Ptsv2paymentsPaymentInformationBankAccount'), require('./model/Ptsv2paymentsPaymentInformationCard'), require('./model/Ptsv2paymentsPaymentInformationCustomer'), require('./model/Ptsv2paymentsPaymentInformationFluidData'), 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/Ptsv2paymentsProcessingInformationRecurringOptions'), require('./model/Ptsv2paymentsRecipientInformation'), require('./model/Ptsv2paymentsidcapturesAggregatorInformation'), require('./model/Ptsv2paymentsidcapturesAggregatorInformationSubMerchant'), require('./model/Ptsv2paymentsidcapturesBuyerInformation'), 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/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/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/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/Ptsv2payoutsProcessingInformationPayoutsOptions'), require('./model/Ptsv2payoutsRecipientInformation'), require('./model/Ptsv2payoutsSenderInformation'), require('./model/Ptsv2payoutsSenderInformationAccount'), require('./model/RefundCaptureRequest'), require('./model/RefundPaymentRequest'), require('./model/ReportingV3ConversionDetailsGet200Response'), require('./model/ReportingV3ConversionDetailsGet200ResponseConversionDetails'), require('./model/ReportingV3ConversionDetailsGet200ResponseNotes'), 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/ReportingV3ReportSubscriptionsGet200Response'), require('./model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions'), require('./model/ReportingV3ReportsGet200Response'), require('./model/ReportingV3ReportsGet200ResponseReportSearchResults'), require('./model/ReportingV3ReportsIdGet200Response'), require('./model/Reportingv3ReportDownloadsGet400Response'), require('./model/Reportingv3ReportDownloadsGet400ResponseDetails'), require('./model/Reportingv3reportsReportPreferences'), require('./model/RequestBody'), require('./model/RequestBody1'), require('./model/ResponseStatus'), require('./model/ResponseStatusDetails'), require('./model/RiskV1DecisionsPost201Response'), require('./model/RiskV1DecisionsPost201ResponsePaymentInformation'), require('./model/RiskV1DecisionsPost201ResponseRiskInformation'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationInfoCodes'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationIpAddress'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationProfile'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationProviders'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationProvidersProviderName'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationRules'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationScore'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravel'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravelActualFinalDestination'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDeparture'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDestination'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravelLastDestination'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationVelocity'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationVelocityMorphing'), require('./model/RiskV1DecisionsPost400Response'), require('./model/Riskv1decisionsBuyerInformation'), require('./model/Riskv1decisionsCardVerification'), require('./model/Riskv1decisionsClientReferenceInformation'), require('./model/Riskv1decisionsDeviceInformation'), require('./model/Riskv1decisionsMerchantDefinedInformation'), require('./model/Riskv1decisionsOrderInformation'), require('./model/Riskv1decisionsOrderInformationAmountDetails'), require('./model/Riskv1decisionsOrderInformationBillTo'), require('./model/Riskv1decisionsOrderInformationLineItems'), require('./model/Riskv1decisionsOrderInformationPassenger'), require('./model/Riskv1decisionsOrderInformationShipTo'), require('./model/Riskv1decisionsOrderInformationShippingDetails'), require('./model/Riskv1decisionsPaymentInformation'), require('./model/Riskv1decisionsPaymentInformationCard'), require('./model/Riskv1decisionsPaymentInformationTokenizedCard'), require('./model/Riskv1decisionsProcessorInformation'), require('./model/Riskv1decisionsProcessorInformationAvs'), require('./model/Riskv1decisionsRiskInformation'), require('./model/Riskv1decisionsRiskInformationProfile'), require('./model/Riskv1decisionsTravelInformation'), require('./model/Riskv1decisionsTravelInformationLegs'), require('./model/SelfLinkBean'), require('./model/TmsV1InstrumentIdentifiersDelete409Response'), require('./model/TmsV1InstrumentIdentifiersDelete409ResponseLinks'), require('./model/TmsV1InstrumentIdentifiersDelete409ResponseLinksPaymentInstruments'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbedded'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBankAccount'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBillTo'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformation'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationIssuedBy'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationPersonalIdentification'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedCard'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedInstrumentIdentifier'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformation'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformationMerchantDescriptor'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformation'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformationBankTransferOptions'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinks'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksFirst'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksLast'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksNext'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksPrev'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksSelf'), require('./model/TmsV1InstrumentIdentifiersPost200Response'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseCard'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseLinks'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseLinksSelf'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseMetadata'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformation'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptions'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiator'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction'), require('./model/Tmsv1instrumentidentifiersBankAccount'), require('./model/Tmsv1instrumentidentifiersBillTo'), require('./model/Tmsv1instrumentidentifiersCard'), require('./model/Tmsv1instrumentidentifiersDetails'), require('./model/TokenizeParameters'), require('./model/TokenizeRequest'), require('./model/TokenizeResult'), require('./model/TssV2TransactionsGet200Response'), require('./model/TssV2TransactionsGet200ResponseApplicationInformation'), require('./model/TssV2TransactionsGet200ResponseApplicationInformationApplications'), require('./model/TssV2TransactionsGet200ResponseBuyerInformation'), require('./model/TssV2TransactionsGet200ResponseClientReferenceInformation'), require('./model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformation'), 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/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/TssV2TransactionsGet200ResponsePaymentInformationInvoice'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationPaymentTypeFundingSource'), require('./model/TssV2TransactionsGet200ResponsePointOfSaleInformation'), require('./model/TssV2TransactionsGet200ResponseProcessingInformation'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions'), require('./model/TssV2TransactionsGet200ResponseProcessorInformation'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationProcessor'), require('./model/TssV2TransactionsGet200ResponseRiskInformation'), require('./model/TssV2TransactionsGet200ResponseRiskInformationProfile'), require('./model/TssV2TransactionsGet200ResponseRiskInformationRules'), require('./model/TssV2TransactionsGet200ResponseRiskInformationScore'), require('./model/TssV2TransactionsGet200ResponseSenderInformation'), require('./model/TssV2TransactionsPost201Response'), require('./model/TssV2TransactionsPost201ResponseEmbedded'), require('./model/TssV2TransactionsPost201ResponseEmbeddedBuyerInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedDeviceInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedLinks'), require('./model/TssV2TransactionsPost201ResponseEmbeddedMerchantInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard'), 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/UpdateInstrumentIdentifierRequest'), require('./model/UpdatePaymentInstrumentRequest'), require('./model/V1FileDetailsGet200Response'), require('./model/V1FileDetailsGet200ResponseFileDetails'), require('./model/V1FileDetailsGet200ResponseLinks'), require('./model/V1FileDetailsGet200ResponseLinksFiles'), require('./model/V1FileDetailsGet200ResponseLinksSelf'), require('./model/VoidCaptureRequest'), require('./model/VoidCreditRequest'), require('./model/VoidPaymentRequest'), require('./model/VoidRefundRequest'), require('./api/CaptureApi'), require('./api/ConversionDetailsApi'), require('./api/CreditApi'), require('./api/DecisionManagerApi'), require('./api/DownloadDTDApi'), require('./api/DownloadXSDApi'), require('./api/InstrumentIdentifierApi'), require('./api/KeyGenerationApi'), require('./api/NetFundingsApi'), require('./api/NotificationOfChangesApi'), 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/ReversalApi'), require('./api/SearchTransactionsApi'), require('./api/SecureFileShareApi'), require('./api/TokenizationApi'), require('./api/TransactionBatchesApi'), require('./api/TransactionDetailsApi'), require('./api/UserManagementApi'), require('./api/VoidApi')); + module.exports = factory(require('./ApiClient'), require('./model/AuthReversalRequest'), require('./model/AuthorizationOptions'), require('./model/BillTo'), require('./model/BuyerInformation'), require('./model/CapturePaymentRequest'), require('./model/CardInfo'), require('./model/CreateAdhocReportRequest'), require('./model/CreateCreditRequest'), require('./model/CreateDecisionManagerCaseRequest'), require('./model/CreateInstrumentIdentifierRequest'), require('./model/CreatePaymentInstrumentRequest'), require('./model/CreatePaymentRequest'), require('./model/CreateReportSubscriptionRequest'), require('./model/CreateSearchRequest'), require('./model/DerPublicKey'), require('./model/Detail'), require('./model/EmbeddedInstrumentIdentifier'), require('./model/Error'), require('./model/ErrorBean'), require('./model/ErrorFieldBean'), require('./model/ErrorLinks'), require('./model/ErrorResponse'), require('./model/ErrorResponseWithHAL'), require('./model/ExistingInstrumentIdentifierId'), require('./model/FileBean'), require('./model/FileDetail'), require('./model/FileDetailsResponse'), require('./model/FlexV1KeysPost200Response'), require('./model/FlexV1KeysPost200ResponseDer'), require('./model/FlexV1KeysPost200ResponseJwk'), require('./model/FlexV1TokensPost200Response'), require('./model/Flexv1tokensCardInfo'), require('./model/GeneratePublicKeyRequest'), require('./model/Initiator'), require('./model/InlineResponse400'), require('./model/InlineResponse4001'), require('./model/InlineResponse400Fields'), require('./model/InlineResponseDefault'), require('./model/InlineResponseDefaultLinks'), require('./model/InlineResponseDefaultLinksNext'), require('./model/InlineResponseDefaultResponseStatus'), require('./model/InlineResponseDefaultResponseStatusDetails'), require('./model/InstrumentIdentifier'), require('./model/InstrumentIdentifierBankAccount'), require('./model/InstrumentIdentifierCard'), require('./model/InstrumentIdentifierEnrollableCard'), require('./model/InstrumentIdentifierProcessingInformation'), require('./model/InstrumentIdentifierUpdate'), require('./model/JsonWebKey'), require('./model/KeyParameters'), require('./model/KeyResult'), require('./model/Link'), require('./model/Links'), require('./model/MerchantInformation'), require('./model/MerchantInitiatedTransaction'), require('./model/Metadata'), require('./model/Model409Link'), require('./model/Model409Links'), require('./model/OctCreatePaymentRequest'), require('./model/PIForIILinkFirst'), require('./model/PIForIILinkLast'), require('./model/PIForIILinkNext'), require('./model/PIForIILinkPrev'), require('./model/PIForIILinkSelf'), require('./model/PaymentInstrument'), require('./model/PaymentInstrumentBankAccount'), require('./model/PaymentInstrumentCard'), require('./model/PaymentInstrumentForInstrumentIdentifierLinks'), require('./model/PaymentInstrumentsArray'), require('./model/PaymentInstrumentsForInstrumentIdentifier'), require('./model/PersonalIdentification'), require('./model/PersonalIdentificationArray'), require('./model/ProcessingInformation'), 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/PtsV2PaymentsCapturesPost201Response'), require('./model/PtsV2PaymentsCapturesPost201ResponseLinks'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformation'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails'), require('./model/PtsV2PaymentsCapturesPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsCapturesPost400Response'), require('./model/PtsV2PaymentsPost201Response'), require('./model/PtsV2PaymentsPost201ResponseClientReferenceInformation'), 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/PtsV2PaymentsPost201ResponsePaymentInformation'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationBank'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationBankAccount'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationCard'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard'), 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/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/PtsV2PaymentsReversalsPost201ResponseLinks'), require('./model/PtsV2PaymentsReversalsPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails'), require('./model/PtsV2PaymentsReversalsPost400Response'), require('./model/PtsV2PaymentsVoidsPost201Response'), 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/Ptsv2creditsPointOfSaleInformation'), require('./model/Ptsv2creditsPointOfSaleInformationEmv'), require('./model/Ptsv2creditsProcessingInformation'), require('./model/Ptsv2creditsProcessingInformationBankTransferOptions'), require('./model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer'), require('./model/Ptsv2creditsProcessingInformationPurchaseOptions'), require('./model/Ptsv2paymentsAggregatorInformation'), require('./model/Ptsv2paymentsAggregatorInformationSubMerchant'), require('./model/Ptsv2paymentsBuyerInformation'), require('./model/Ptsv2paymentsBuyerInformationPersonalIdentification'), require('./model/Ptsv2paymentsClientReferenceInformation'), require('./model/Ptsv2paymentsClientReferenceInformationPartner'), require('./model/Ptsv2paymentsConsumerAuthenticationInformation'), require('./model/Ptsv2paymentsDeviceInformation'), require('./model/Ptsv2paymentsInstallmentInformation'), 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/Ptsv2paymentsOrderInformationAmountDetailsSurcharge'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsTaxDetails'), require('./model/Ptsv2paymentsOrderInformationBillTo'), require('./model/Ptsv2paymentsOrderInformationInvoiceDetails'), require('./model/Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum'), require('./model/Ptsv2paymentsOrderInformationLineItems'), require('./model/Ptsv2paymentsOrderInformationShipTo'), require('./model/Ptsv2paymentsOrderInformationShippingDetails'), require('./model/Ptsv2paymentsPaymentInformation'), require('./model/Ptsv2paymentsPaymentInformationBank'), require('./model/Ptsv2paymentsPaymentInformationBankAccount'), require('./model/Ptsv2paymentsPaymentInformationCard'), require('./model/Ptsv2paymentsPaymentInformationCustomer'), require('./model/Ptsv2paymentsPaymentInformationFluidData'), require('./model/Ptsv2paymentsPaymentInformationPaymentType'), require('./model/Ptsv2paymentsPaymentInformationPaymentTypeMethod'), 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/Ptsv2paymentsProcessingInformationPurchaseOptions'), require('./model/Ptsv2paymentsProcessingInformationRecurringOptions'), require('./model/Ptsv2paymentsRecipientInformation'), require('./model/Ptsv2paymentsidcapturesAggregatorInformation'), require('./model/Ptsv2paymentsidcapturesAggregatorInformationSubMerchant'), require('./model/Ptsv2paymentsidcapturesBuyerInformation'), 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/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/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/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/Ptsv2payoutsProcessingInformationPayoutsOptions'), require('./model/Ptsv2payoutsRecipientInformation'), require('./model/Ptsv2payoutsSenderInformation'), require('./model/Ptsv2payoutsSenderInformationAccount'), require('./model/RefundCaptureRequest'), require('./model/RefundPaymentRequest'), require('./model/ReportingV3ConversionDetailsGet200Response'), require('./model/ReportingV3ConversionDetailsGet200ResponseConversionDetails'), require('./model/ReportingV3ConversionDetailsGet200ResponseNotes'), 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/ReportingV3ReportSubscriptionsGet200Response'), require('./model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions'), require('./model/ReportingV3ReportsGet200Response'), require('./model/ReportingV3ReportsGet200ResponseReportSearchResults'), require('./model/ReportingV3ReportsIdGet200Response'), require('./model/Reportingv3ReportDownloadsGet400Response'), require('./model/Reportingv3ReportDownloadsGet400ResponseDetails'), require('./model/Reportingv3reportsReportPreferences'), require('./model/ResponseStatus'), require('./model/ResponseStatusDetails'), require('./model/RiskV1DecisionsPost201Response'), require('./model/RiskV1DecisionsPost201ResponsePaymentInformation'), require('./model/RiskV1DecisionsPost201ResponseRiskInformation'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationInfoCodes'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationIpAddress'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationProfile'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationProviders'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationProvidersProviderName'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationRules'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationScore'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravel'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravelActualFinalDestination'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDeparture'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDestination'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationTravelLastDestination'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationVelocity'), require('./model/RiskV1DecisionsPost201ResponseRiskInformationVelocityMorphing'), require('./model/RiskV1DecisionsPost400Response'), require('./model/Riskv1decisionsBuyerInformation'), require('./model/Riskv1decisionsCardVerification'), require('./model/Riskv1decisionsClientReferenceInformation'), require('./model/Riskv1decisionsDeviceInformation'), require('./model/Riskv1decisionsMerchantDefinedInformation'), require('./model/Riskv1decisionsOrderInformation'), require('./model/Riskv1decisionsOrderInformationAmountDetails'), require('./model/Riskv1decisionsOrderInformationBillTo'), require('./model/Riskv1decisionsOrderInformationLineItems'), require('./model/Riskv1decisionsOrderInformationPassenger'), require('./model/Riskv1decisionsOrderInformationShipTo'), require('./model/Riskv1decisionsOrderInformationShippingDetails'), require('./model/Riskv1decisionsPaymentInformation'), require('./model/Riskv1decisionsPaymentInformationCard'), require('./model/Riskv1decisionsPaymentInformationTokenizedCard'), require('./model/Riskv1decisionsProcessorInformation'), require('./model/Riskv1decisionsProcessorInformationAvs'), require('./model/Riskv1decisionsRiskInformation'), require('./model/Riskv1decisionsRiskInformationProfile'), require('./model/Riskv1decisionsTravelInformation'), require('./model/Riskv1decisionsTravelInformationLegs'), require('./model/SelfLinkBean'), require('./model/TmsV1InstrumentIdentifiersDelete409Response'), require('./model/TmsV1InstrumentIdentifiersDelete409ResponseLinks'), require('./model/TmsV1InstrumentIdentifiersDelete409ResponseLinksPaymentInstruments'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbedded'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBankAccount'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBillTo'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformation'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationIssuedBy'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationPersonalIdentification'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedCard'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedInstrumentIdentifier'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformation'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformationMerchantDescriptor'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformation'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformationBankTransferOptions'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinks'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksFirst'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksLast'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksNext'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksPrev'), require('./model/TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksSelf'), require('./model/TmsV1InstrumentIdentifiersPost200Response'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseCard'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseLinks'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseLinksSelf'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseMetadata'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformation'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptions'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiator'), require('./model/TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction'), require('./model/Tmsv1instrumentidentifiersBankAccount'), require('./model/Tmsv1instrumentidentifiersBillTo'), require('./model/Tmsv1instrumentidentifiersCard'), require('./model/Tmsv1instrumentidentifiersDetails'), require('./model/TokenizeParameters'), require('./model/TokenizeRequest'), require('./model/TokenizeResult'), require('./model/TssV2TransactionsGet200Response'), require('./model/TssV2TransactionsGet200ResponseApplicationInformation'), require('./model/TssV2TransactionsGet200ResponseApplicationInformationApplications'), require('./model/TssV2TransactionsGet200ResponseBuyerInformation'), require('./model/TssV2TransactionsGet200ResponseClientReferenceInformation'), require('./model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformation'), 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/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/TssV2TransactionsGet200ResponsePaymentInformationInvoice'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationPaymentTypeFundingSource'), require('./model/TssV2TransactionsGet200ResponsePointOfSaleInformation'), require('./model/TssV2TransactionsGet200ResponseProcessingInformation'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions'), require('./model/TssV2TransactionsGet200ResponseProcessorInformation'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationProcessor'), require('./model/TssV2TransactionsGet200ResponseRiskInformation'), require('./model/TssV2TransactionsGet200ResponseRiskInformationProfile'), require('./model/TssV2TransactionsGet200ResponseRiskInformationRules'), require('./model/TssV2TransactionsGet200ResponseRiskInformationScore'), require('./model/TssV2TransactionsGet200ResponseSenderInformation'), require('./model/TssV2TransactionsPost201Response'), require('./model/TssV2TransactionsPost201ResponseEmbedded'), require('./model/TssV2TransactionsPost201ResponseEmbeddedBuyerInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedDeviceInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedLinks'), require('./model/TssV2TransactionsPost201ResponseEmbeddedMerchantInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard'), 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/UpdateInstrumentIdentifierRequest'), require('./model/UpdatePaymentInstrumentRequest'), require('./model/V1FileDetailsGet200Response'), require('./model/V1FileDetailsGet200ResponseFileDetails'), require('./model/V1FileDetailsGet200ResponseLinks'), require('./model/V1FileDetailsGet200ResponseLinksFiles'), require('./model/V1FileDetailsGet200ResponseLinksSelf'), require('./model/VoidCaptureRequest'), require('./model/VoidCreditRequest'), require('./model/VoidPaymentRequest'), require('./model/VoidRefundRequest'), require('./api/CaptureApi'), require('./api/ConversionDetailsApi'), require('./api/CreditApi'), require('./api/DecisionManagerApi'), require('./api/DownloadDTDApi'), require('./api/DownloadXSDApi'), require('./api/InstrumentIdentifierApi'), require('./api/KeyGenerationApi'), require('./api/NetFundingsApi'), require('./api/NotificationOfChangesApi'), 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/ReversalApi'), require('./api/SearchTransactionsApi'), require('./api/SecureFileShareApi'), require('./api/TokenizationApi'), require('./api/TransactionBatchesApi'), require('./api/TransactionDetailsApi'), require('./api/UserManagementApi'), require('./api/VoidApi')); } -}(function(ApiClient, AuthReversalRequest, AuthorizationOptions, BillTo, BuyerInformation, CapturePaymentRequest, CardInfo, CreateCreditRequest, CreateDecisionManagerCaseRequest, CreateInstrumentIdentifierRequest, CreatePaymentInstrumentRequest, CreatePaymentRequest, CreateSearchRequest, DerPublicKey, Detail, EmbeddedInstrumentIdentifier, Error, ErrorBean, ErrorFieldBean, ErrorLinks, ErrorResponse, ErrorResponseWithHAL, ExistingInstrumentIdentifierId, FileBean, FileDetail, FileDetailsResponse, FlexV1KeysPost200Response, FlexV1KeysPost200ResponseDer, FlexV1KeysPost200ResponseJwk, FlexV1TokensPost200Response, Flexv1tokensCardInfo, GeneratePublicKeyRequest, Initiator, InlineResponse400, InlineResponse4001, InlineResponse4001Fields, InlineResponseDefault, InlineResponseDefaultLinks, InlineResponseDefaultLinksNext, InlineResponseDefaultResponseStatus, InlineResponseDefaultResponseStatusDetails, InstrumentIdentifier, InstrumentIdentifierBankAccount, InstrumentIdentifierCard, InstrumentIdentifierEnrollableCard, InstrumentIdentifierProcessingInformation, InstrumentIdentifierUpdate, JsonWebKey, KeyParameters, KeyResult, Link, Links, MerchantInformation, MerchantInitiatedTransaction, Metadata, Model409Link, Model409Links, OctCreatePaymentRequest, PIForIILinkFirst, PIForIILinkLast, PIForIILinkNext, PIForIILinkPrev, PIForIILinkSelf, PaymentInstrument, PaymentInstrumentBankAccount, PaymentInstrumentCard, PaymentInstrumentForInstrumentIdentifierLinks, PaymentInstrumentsArray, PaymentInstrumentsForInstrumentIdentifier, PersonalIdentification, PersonalIdentificationArray, ProcessingInformation, PtsV1TransactionBatchesGet200Response, PtsV1TransactionBatchesGet200ResponseLinks, PtsV1TransactionBatchesGet200ResponseLinksSelf, PtsV1TransactionBatchesGet200ResponseTransactionBatches, PtsV1TransactionBatchesGet400Response, PtsV1TransactionBatchesGet400ResponseErrorInformation, PtsV1TransactionBatchesGet400ResponseErrorInformationDetails, PtsV1TransactionBatchesGet500Response, PtsV1TransactionBatchesGet500ResponseErrorInformation, PtsV1TransactionBatchesIdGet200Response, PtsV1TransactionBatchesIdGet200ResponseLinks, PtsV1TransactionBatchesIdGet200ResponseLinksTransactions, PtsV2CreditsPost201Response, PtsV2CreditsPost201ResponseCreditAmountDetails, PtsV2CreditsPost201ResponsePaymentInformation, PtsV2CreditsPost201ResponseProcessingInformation, PtsV2CreditsPost201ResponseProcessingInformationBankTransferOptions, PtsV2PaymentsCapturesPost201Response, PtsV2PaymentsCapturesPost201ResponseLinks, PtsV2PaymentsCapturesPost201ResponseOrderInformation, PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails, PtsV2PaymentsCapturesPost201ResponseProcessorInformation, PtsV2PaymentsCapturesPost400Response, PtsV2PaymentsPost201Response, PtsV2PaymentsPost201ResponseClientReferenceInformation, PtsV2PaymentsPost201ResponseErrorInformation, PtsV2PaymentsPost201ResponseErrorInformationDetails, PtsV2PaymentsPost201ResponseInstallmentInformation, PtsV2PaymentsPost201ResponseIssuerInformation, PtsV2PaymentsPost201ResponseLinks, PtsV2PaymentsPost201ResponseLinksSelf, PtsV2PaymentsPost201ResponseOrderInformation, PtsV2PaymentsPost201ResponseOrderInformationAmountDetails, PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails, PtsV2PaymentsPost201ResponsePaymentInformation, PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures, PtsV2PaymentsPost201ResponsePaymentInformationBank, PtsV2PaymentsPost201ResponsePaymentInformationBankAccount, PtsV2PaymentsPost201ResponsePaymentInformationCard, PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard, PtsV2PaymentsPost201ResponsePointOfSaleInformation, PtsV2PaymentsPost201ResponsePointOfSaleInformationEmv, PtsV2PaymentsPost201ResponseProcessingInformation, PtsV2PaymentsPost201ResponseProcessingInformationBankTransferOptions, PtsV2PaymentsPost201ResponseProcessorInformation, PtsV2PaymentsPost201ResponseProcessorInformationAchVerification, PtsV2PaymentsPost201ResponseProcessorInformationAvs, PtsV2PaymentsPost201ResponseProcessorInformationCardVerification, PtsV2PaymentsPost201ResponseProcessorInformationConsumerAuthenticationResponse, PtsV2PaymentsPost201ResponseProcessorInformationCustomer, PtsV2PaymentsPost201ResponseProcessorInformationElectronicVerificationResults, PtsV2PaymentsPost201ResponseProcessorInformationMerchantAdvice, PtsV2PaymentsPost201ResponseProcessorInformationRouting, PtsV2PaymentsPost400Response, PtsV2PaymentsPost502Response, PtsV2PaymentsRefundPost201Response, PtsV2PaymentsRefundPost201ResponseLinks, PtsV2PaymentsRefundPost201ResponseOrderInformation, PtsV2PaymentsRefundPost201ResponseProcessorInformation, PtsV2PaymentsRefundPost201ResponseRefundAmountDetails, PtsV2PaymentsRefundPost400Response, PtsV2PaymentsReversalsPost201Response, PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation, PtsV2PaymentsReversalsPost201ResponseIssuerInformation, PtsV2PaymentsReversalsPost201ResponseLinks, PtsV2PaymentsReversalsPost201ResponseProcessorInformation, PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails, PtsV2PaymentsReversalsPost400Response, PtsV2PaymentsVoidsPost201Response, PtsV2PaymentsVoidsPost201ResponseVoidAmountDetails, PtsV2PaymentsVoidsPost400Response, PtsV2PayoutsPost201Response, PtsV2PayoutsPost201ResponseErrorInformation, PtsV2PayoutsPost201ResponseMerchantInformation, PtsV2PayoutsPost201ResponseMerchantInformationMerchantDescriptor, PtsV2PayoutsPost201ResponseOrderInformation, PtsV2PayoutsPost201ResponseOrderInformationAmountDetails, PtsV2PayoutsPost201ResponseProcessorInformation, PtsV2PayoutsPost201ResponseRecipientInformation, PtsV2PayoutsPost201ResponseRecipientInformationCard, PtsV2PayoutsPost400Response, Ptsv2creditsPointOfSaleInformation, Ptsv2creditsPointOfSaleInformationEmv, Ptsv2creditsProcessingInformation, Ptsv2creditsProcessingInformationBankTransferOptions, Ptsv2paymentsAggregatorInformation, Ptsv2paymentsAggregatorInformationSubMerchant, Ptsv2paymentsBuyerInformation, Ptsv2paymentsBuyerInformationPersonalIdentification, Ptsv2paymentsClientReferenceInformation, Ptsv2paymentsClientReferenceInformationPartner, Ptsv2paymentsConsumerAuthenticationInformation, Ptsv2paymentsDeviceInformation, Ptsv2paymentsInstallmentInformation, Ptsv2paymentsIssuerInformation, Ptsv2paymentsMerchantDefinedInformation, Ptsv2paymentsMerchantInformation, Ptsv2paymentsMerchantInformationMerchantDescriptor, Ptsv2paymentsMerchantInformationServiceFeeDescriptor, Ptsv2paymentsOrderInformation, Ptsv2paymentsOrderInformationAmountDetails, Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts, Ptsv2paymentsOrderInformationAmountDetailsSurcharge, Ptsv2paymentsOrderInformationAmountDetailsTaxDetails, Ptsv2paymentsOrderInformationBillTo, Ptsv2paymentsOrderInformationInvoiceDetails, Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum, Ptsv2paymentsOrderInformationLineItems, Ptsv2paymentsOrderInformationShipTo, Ptsv2paymentsOrderInformationShippingDetails, Ptsv2paymentsPaymentInformation, Ptsv2paymentsPaymentInformationBank, Ptsv2paymentsPaymentInformationBankAccount, Ptsv2paymentsPaymentInformationCard, Ptsv2paymentsPaymentInformationCustomer, Ptsv2paymentsPaymentInformationFluidData, Ptsv2paymentsPaymentInformationTokenizedCard, Ptsv2paymentsPointOfSaleInformation, Ptsv2paymentsPointOfSaleInformationEmv, Ptsv2paymentsProcessingInformation, Ptsv2paymentsProcessingInformationAuthorizationOptions, Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator, Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction, Ptsv2paymentsProcessingInformationBankTransferOptions, Ptsv2paymentsProcessingInformationCaptureOptions, Ptsv2paymentsProcessingInformationRecurringOptions, Ptsv2paymentsRecipientInformation, Ptsv2paymentsidcapturesAggregatorInformation, Ptsv2paymentsidcapturesAggregatorInformationSubMerchant, Ptsv2paymentsidcapturesBuyerInformation, Ptsv2paymentsidcapturesInstallmentInformation, Ptsv2paymentsidcapturesMerchantInformation, Ptsv2paymentsidcapturesOrderInformation, Ptsv2paymentsidcapturesOrderInformationAmountDetails, Ptsv2paymentsidcapturesOrderInformationBillTo, Ptsv2paymentsidcapturesOrderInformationInvoiceDetails, Ptsv2paymentsidcapturesOrderInformationShipTo, Ptsv2paymentsidcapturesOrderInformationShippingDetails, Ptsv2paymentsidcapturesPaymentInformation, Ptsv2paymentsidcapturesPointOfSaleInformation, Ptsv2paymentsidcapturesPointOfSaleInformationEmv, Ptsv2paymentsidcapturesProcessingInformation, Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions, Ptsv2paymentsidcapturesProcessingInformationCaptureOptions, Ptsv2paymentsidrefundsMerchantInformation, Ptsv2paymentsidrefundsOrderInformation, Ptsv2paymentsidrefundsOrderInformationLineItems, Ptsv2paymentsidrefundsPaymentInformation, Ptsv2paymentsidrefundsPaymentInformationCard, Ptsv2paymentsidrefundsPointOfSaleInformation, Ptsv2paymentsidrefundsProcessingInformation, Ptsv2paymentsidrefundsProcessingInformationRecurringOptions, Ptsv2paymentsidreversalsClientReferenceInformation, Ptsv2paymentsidreversalsClientReferenceInformationPartner, Ptsv2paymentsidreversalsOrderInformation, Ptsv2paymentsidreversalsOrderInformationAmountDetails, Ptsv2paymentsidreversalsOrderInformationLineItems, Ptsv2paymentsidreversalsPointOfSaleInformation, Ptsv2paymentsidreversalsPointOfSaleInformationEmv, Ptsv2paymentsidreversalsProcessingInformation, Ptsv2paymentsidreversalsReversalInformation, Ptsv2paymentsidreversalsReversalInformationAmountDetails, Ptsv2payoutsClientReferenceInformation, Ptsv2payoutsMerchantInformation, Ptsv2payoutsMerchantInformationMerchantDescriptor, Ptsv2payoutsOrderInformation, Ptsv2payoutsOrderInformationAmountDetails, Ptsv2payoutsOrderInformationAmountDetailsSurcharge, Ptsv2payoutsOrderInformationBillTo, Ptsv2payoutsPaymentInformation, Ptsv2payoutsPaymentInformationCard, Ptsv2payoutsProcessingInformation, Ptsv2payoutsProcessingInformationPayoutsOptions, Ptsv2payoutsRecipientInformation, Ptsv2payoutsSenderInformation, Ptsv2payoutsSenderInformationAccount, RefundCaptureRequest, RefundPaymentRequest, ReportingV3ConversionDetailsGet200Response, ReportingV3ConversionDetailsGet200ResponseConversionDetails, ReportingV3ConversionDetailsGet200ResponseNotes, ReportingV3NetFundingsGet200Response, ReportingV3NetFundingsGet200ResponseNetFundingSummaries, ReportingV3NetFundingsGet200ResponseTotalPurchases, ReportingV3NotificationofChangesGet200Response, ReportingV3NotificationofChangesGet200ResponseNotificationOfChanges, ReportingV3PaymentBatchSummariesGet200Response, ReportingV3PaymentBatchSummariesGet200ResponsePaymentBatchSummaries, ReportingV3PurchaseRefundDetailsGet200Response, ReportingV3PurchaseRefundDetailsGet200ResponseAuthorizations, ReportingV3PurchaseRefundDetailsGet200ResponseFeeAndFundingDetails, ReportingV3PurchaseRefundDetailsGet200ResponseOthers, ReportingV3PurchaseRefundDetailsGet200ResponseRequestDetails, ReportingV3PurchaseRefundDetailsGet200ResponseSettlementStatuses, ReportingV3PurchaseRefundDetailsGet200ResponseSettlements, ReportingV3ReportDefinitionsGet200Response, ReportingV3ReportDefinitionsGet200ResponseReportDefinitions, ReportingV3ReportDefinitionsNameGet200Response, ReportingV3ReportDefinitionsNameGet200ResponseAttributes, ReportingV3ReportSubscriptionsGet200Response, ReportingV3ReportSubscriptionsGet200ResponseSubscriptions, ReportingV3ReportsGet200Response, ReportingV3ReportsGet200ResponseReportSearchResults, ReportingV3ReportsIdGet200Response, Reportingv3ReportDownloadsGet400Response, Reportingv3ReportDownloadsGet400ResponseDetails, Reportingv3reportsReportPreferences, RequestBody, RequestBody1, ResponseStatus, ResponseStatusDetails, RiskV1DecisionsPost201Response, RiskV1DecisionsPost201ResponsePaymentInformation, RiskV1DecisionsPost201ResponseRiskInformation, RiskV1DecisionsPost201ResponseRiskInformationInfoCodes, RiskV1DecisionsPost201ResponseRiskInformationIpAddress, RiskV1DecisionsPost201ResponseRiskInformationProfile, RiskV1DecisionsPost201ResponseRiskInformationProviders, RiskV1DecisionsPost201ResponseRiskInformationProvidersProviderName, RiskV1DecisionsPost201ResponseRiskInformationRules, RiskV1DecisionsPost201ResponseRiskInformationScore, RiskV1DecisionsPost201ResponseRiskInformationTravel, RiskV1DecisionsPost201ResponseRiskInformationTravelActualFinalDestination, RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDeparture, RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDestination, RiskV1DecisionsPost201ResponseRiskInformationTravelLastDestination, RiskV1DecisionsPost201ResponseRiskInformationVelocity, RiskV1DecisionsPost201ResponseRiskInformationVelocityMorphing, RiskV1DecisionsPost400Response, Riskv1decisionsBuyerInformation, Riskv1decisionsCardVerification, Riskv1decisionsClientReferenceInformation, Riskv1decisionsDeviceInformation, Riskv1decisionsMerchantDefinedInformation, Riskv1decisionsOrderInformation, Riskv1decisionsOrderInformationAmountDetails, Riskv1decisionsOrderInformationBillTo, Riskv1decisionsOrderInformationLineItems, Riskv1decisionsOrderInformationPassenger, Riskv1decisionsOrderInformationShipTo, Riskv1decisionsOrderInformationShippingDetails, Riskv1decisionsPaymentInformation, Riskv1decisionsPaymentInformationCard, Riskv1decisionsPaymentInformationTokenizedCard, Riskv1decisionsProcessorInformation, Riskv1decisionsProcessorInformationAvs, Riskv1decisionsRiskInformation, Riskv1decisionsRiskInformationProfile, Riskv1decisionsTravelInformation, Riskv1decisionsTravelInformationLegs, SelfLinkBean, TmsV1InstrumentIdentifiersDelete409Response, TmsV1InstrumentIdentifiersDelete409ResponseLinks, TmsV1InstrumentIdentifiersDelete409ResponseLinksPaymentInstruments, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbedded, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBankAccount, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBillTo, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformation, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationIssuedBy, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationPersonalIdentification, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedCard, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedInstrumentIdentifier, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformation, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformationMerchantDescriptor, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformation, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformationBankTransferOptions, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinks, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksFirst, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksLast, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksNext, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksPrev, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksSelf, TmsV1InstrumentIdentifiersPost200Response, TmsV1InstrumentIdentifiersPost200ResponseCard, TmsV1InstrumentIdentifiersPost200ResponseLinks, TmsV1InstrumentIdentifiersPost200ResponseLinksSelf, TmsV1InstrumentIdentifiersPost200ResponseMetadata, TmsV1InstrumentIdentifiersPost200ResponseProcessingInformation, TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptions, TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiator, TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction, Tmsv1instrumentidentifiersBankAccount, Tmsv1instrumentidentifiersBillTo, Tmsv1instrumentidentifiersCard, Tmsv1instrumentidentifiersDetails, TokenizeParameters, TokenizeRequest, TokenizeResult, TssV2TransactionsGet200Response, TssV2TransactionsGet200ResponseApplicationInformation, TssV2TransactionsGet200ResponseApplicationInformationApplications, TssV2TransactionsGet200ResponseBuyerInformation, TssV2TransactionsGet200ResponseClientReferenceInformation, TssV2TransactionsGet200ResponseConsumerAuthenticationInformation, TssV2TransactionsGet200ResponseDeviceInformation, TssV2TransactionsGet200ResponseErrorInformation, TssV2TransactionsGet200ResponseFraudMarkingInformation, TssV2TransactionsGet200ResponseInstallmentInformation, TssV2TransactionsGet200ResponseLinks, TssV2TransactionsGet200ResponseMerchantInformation, TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor, TssV2TransactionsGet200ResponseOrderInformation, TssV2TransactionsGet200ResponseOrderInformationAmountDetails, TssV2TransactionsGet200ResponseOrderInformationBillTo, TssV2TransactionsGet200ResponseOrderInformationLineItems, TssV2TransactionsGet200ResponseOrderInformationShipTo, TssV2TransactionsGet200ResponseOrderInformationShippingDetails, TssV2TransactionsGet200ResponsePaymentInformation, TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures, TssV2TransactionsGet200ResponsePaymentInformationBank, TssV2TransactionsGet200ResponsePaymentInformationBankAccount, TssV2TransactionsGet200ResponsePaymentInformationBankMandate, TssV2TransactionsGet200ResponsePaymentInformationCard, TssV2TransactionsGet200ResponsePaymentInformationInvoice, TssV2TransactionsGet200ResponsePaymentInformationPaymentType, TssV2TransactionsGet200ResponsePaymentInformationPaymentTypeFundingSource, TssV2TransactionsGet200ResponsePointOfSaleInformation, TssV2TransactionsGet200ResponseProcessingInformation, TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions, TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions, TssV2TransactionsGet200ResponseProcessorInformation, TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults, TssV2TransactionsGet200ResponseProcessorInformationProcessor, TssV2TransactionsGet200ResponseRiskInformation, TssV2TransactionsGet200ResponseRiskInformationProfile, TssV2TransactionsGet200ResponseRiskInformationRules, TssV2TransactionsGet200ResponseRiskInformationScore, TssV2TransactionsGet200ResponseSenderInformation, TssV2TransactionsPost201Response, TssV2TransactionsPost201ResponseEmbedded, TssV2TransactionsPost201ResponseEmbeddedBuyerInformation, TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation, TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation, TssV2TransactionsPost201ResponseEmbeddedDeviceInformation, TssV2TransactionsPost201ResponseEmbeddedLinks, TssV2TransactionsPost201ResponseEmbeddedMerchantInformation, TssV2TransactionsPost201ResponseEmbeddedOrderInformation, TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo, TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo, TssV2TransactionsPost201ResponseEmbeddedPaymentInformation, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType, TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformation, TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformationPartner, TssV2TransactionsPost201ResponseEmbeddedProcessingInformation, TssV2TransactionsPost201ResponseEmbeddedProcessorInformation, TssV2TransactionsPost201ResponseEmbeddedRiskInformation, TssV2TransactionsPost201ResponseEmbeddedRiskInformationProviders, TssV2TransactionsPost201ResponseEmbeddedRiskInformationProvidersFingerprint, TssV2TransactionsPost201ResponseEmbeddedTransactionSummaries, TssV2TransactionsPost400Response, UmsV1UsersGet200Response, UmsV1UsersGet200ResponseAccountInformation, UmsV1UsersGet200ResponseContactInformation, UmsV1UsersGet200ResponseOrganizationInformation, UmsV1UsersGet200ResponseUsers, UpdateInstrumentIdentifierRequest, UpdatePaymentInstrumentRequest, V1FileDetailsGet200Response, V1FileDetailsGet200ResponseFileDetails, V1FileDetailsGet200ResponseLinks, V1FileDetailsGet200ResponseLinksFiles, V1FileDetailsGet200ResponseLinksSelf, VoidCaptureRequest, VoidCreditRequest, VoidPaymentRequest, VoidRefundRequest, CaptureApi, ConversionDetailsApi, CreditApi, DecisionManagerApi, DownloadDTDApi, DownloadXSDApi, InstrumentIdentifierApi, KeyGenerationApi, NetFundingsApi, NotificationOfChangesApi, PaymentBatchSummariesApi, PaymentInstrumentApi, PaymentsApi, PayoutsApi, PurchaseAndRefundDetailsApi, RefundApi, ReportDefinitionsApi, ReportDownloadsApi, ReportSubscriptionsApi, ReportsApi, ReversalApi, SearchTransactionsApi, SecureFileShareApi, TokenizationApi, TransactionBatchesApi, TransactionDetailsApi, UserManagementApi, VoidApi) { +}(function(ApiClient, AuthReversalRequest, AuthorizationOptions, BillTo, BuyerInformation, CapturePaymentRequest, CardInfo, CreateAdhocReportRequest, CreateCreditRequest, CreateDecisionManagerCaseRequest, CreateInstrumentIdentifierRequest, CreatePaymentInstrumentRequest, CreatePaymentRequest, CreateReportSubscriptionRequest, CreateSearchRequest, DerPublicKey, Detail, EmbeddedInstrumentIdentifier, Error, ErrorBean, ErrorFieldBean, ErrorLinks, ErrorResponse, ErrorResponseWithHAL, ExistingInstrumentIdentifierId, FileBean, FileDetail, FileDetailsResponse, FlexV1KeysPost200Response, FlexV1KeysPost200ResponseDer, FlexV1KeysPost200ResponseJwk, FlexV1TokensPost200Response, Flexv1tokensCardInfo, GeneratePublicKeyRequest, Initiator, InlineResponse400, InlineResponse4001, InlineResponse400Fields, InlineResponseDefault, InlineResponseDefaultLinks, InlineResponseDefaultLinksNext, InlineResponseDefaultResponseStatus, InlineResponseDefaultResponseStatusDetails, InstrumentIdentifier, InstrumentIdentifierBankAccount, InstrumentIdentifierCard, InstrumentIdentifierEnrollableCard, InstrumentIdentifierProcessingInformation, InstrumentIdentifierUpdate, JsonWebKey, KeyParameters, KeyResult, Link, Links, MerchantInformation, MerchantInitiatedTransaction, Metadata, Model409Link, Model409Links, OctCreatePaymentRequest, PIForIILinkFirst, PIForIILinkLast, PIForIILinkNext, PIForIILinkPrev, PIForIILinkSelf, PaymentInstrument, PaymentInstrumentBankAccount, PaymentInstrumentCard, PaymentInstrumentForInstrumentIdentifierLinks, PaymentInstrumentsArray, PaymentInstrumentsForInstrumentIdentifier, PersonalIdentification, PersonalIdentificationArray, ProcessingInformation, PtsV1TransactionBatchesGet200Response, PtsV1TransactionBatchesGet200ResponseLinks, PtsV1TransactionBatchesGet200ResponseLinksSelf, PtsV1TransactionBatchesGet200ResponseTransactionBatches, PtsV1TransactionBatchesGet400Response, PtsV1TransactionBatchesGet400ResponseErrorInformation, PtsV1TransactionBatchesGet400ResponseErrorInformationDetails, PtsV1TransactionBatchesGet500Response, PtsV1TransactionBatchesGet500ResponseErrorInformation, PtsV1TransactionBatchesIdGet200Response, PtsV1TransactionBatchesIdGet200ResponseLinks, PtsV1TransactionBatchesIdGet200ResponseLinksTransactions, PtsV2CreditsPost201Response, PtsV2CreditsPost201ResponseCreditAmountDetails, PtsV2CreditsPost201ResponsePaymentInformation, PtsV2CreditsPost201ResponseProcessingInformation, PtsV2CreditsPost201ResponseProcessingInformationBankTransferOptions, PtsV2PaymentsCapturesPost201Response, PtsV2PaymentsCapturesPost201ResponseLinks, PtsV2PaymentsCapturesPost201ResponseOrderInformation, PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails, PtsV2PaymentsCapturesPost201ResponseProcessorInformation, PtsV2PaymentsCapturesPost400Response, PtsV2PaymentsPost201Response, PtsV2PaymentsPost201ResponseClientReferenceInformation, PtsV2PaymentsPost201ResponseErrorInformation, PtsV2PaymentsPost201ResponseErrorInformationDetails, PtsV2PaymentsPost201ResponseInstallmentInformation, PtsV2PaymentsPost201ResponseIssuerInformation, PtsV2PaymentsPost201ResponseLinks, PtsV2PaymentsPost201ResponseLinksSelf, PtsV2PaymentsPost201ResponseOrderInformation, PtsV2PaymentsPost201ResponseOrderInformationAmountDetails, PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails, PtsV2PaymentsPost201ResponsePaymentInformation, PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures, PtsV2PaymentsPost201ResponsePaymentInformationBank, PtsV2PaymentsPost201ResponsePaymentInformationBankAccount, PtsV2PaymentsPost201ResponsePaymentInformationCard, PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard, PtsV2PaymentsPost201ResponsePointOfSaleInformation, PtsV2PaymentsPost201ResponsePointOfSaleInformationEmv, PtsV2PaymentsPost201ResponseProcessingInformation, PtsV2PaymentsPost201ResponseProcessingInformationBankTransferOptions, PtsV2PaymentsPost201ResponseProcessorInformation, PtsV2PaymentsPost201ResponseProcessorInformationAchVerification, PtsV2PaymentsPost201ResponseProcessorInformationAvs, PtsV2PaymentsPost201ResponseProcessorInformationCardVerification, PtsV2PaymentsPost201ResponseProcessorInformationConsumerAuthenticationResponse, PtsV2PaymentsPost201ResponseProcessorInformationCustomer, PtsV2PaymentsPost201ResponseProcessorInformationElectronicVerificationResults, PtsV2PaymentsPost201ResponseProcessorInformationMerchantAdvice, PtsV2PaymentsPost201ResponseProcessorInformationRouting, PtsV2PaymentsPost400Response, PtsV2PaymentsPost502Response, PtsV2PaymentsRefundPost201Response, PtsV2PaymentsRefundPost201ResponseLinks, PtsV2PaymentsRefundPost201ResponseOrderInformation, PtsV2PaymentsRefundPost201ResponseProcessorInformation, PtsV2PaymentsRefundPost201ResponseRefundAmountDetails, PtsV2PaymentsRefundPost400Response, PtsV2PaymentsReversalsPost201Response, PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation, PtsV2PaymentsReversalsPost201ResponseIssuerInformation, PtsV2PaymentsReversalsPost201ResponseLinks, PtsV2PaymentsReversalsPost201ResponseProcessorInformation, PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails, PtsV2PaymentsReversalsPost400Response, PtsV2PaymentsVoidsPost201Response, PtsV2PaymentsVoidsPost201ResponseVoidAmountDetails, PtsV2PaymentsVoidsPost400Response, PtsV2PayoutsPost201Response, PtsV2PayoutsPost201ResponseErrorInformation, PtsV2PayoutsPost201ResponseMerchantInformation, PtsV2PayoutsPost201ResponseMerchantInformationMerchantDescriptor, PtsV2PayoutsPost201ResponseOrderInformation, PtsV2PayoutsPost201ResponseOrderInformationAmountDetails, PtsV2PayoutsPost201ResponseProcessorInformation, PtsV2PayoutsPost201ResponseRecipientInformation, PtsV2PayoutsPost201ResponseRecipientInformationCard, PtsV2PayoutsPost400Response, Ptsv2creditsPointOfSaleInformation, Ptsv2creditsPointOfSaleInformationEmv, Ptsv2creditsProcessingInformation, Ptsv2creditsProcessingInformationBankTransferOptions, Ptsv2creditsProcessingInformationElectronicBenefitsTransfer, Ptsv2creditsProcessingInformationPurchaseOptions, Ptsv2paymentsAggregatorInformation, Ptsv2paymentsAggregatorInformationSubMerchant, Ptsv2paymentsBuyerInformation, Ptsv2paymentsBuyerInformationPersonalIdentification, Ptsv2paymentsClientReferenceInformation, Ptsv2paymentsClientReferenceInformationPartner, Ptsv2paymentsConsumerAuthenticationInformation, Ptsv2paymentsDeviceInformation, Ptsv2paymentsInstallmentInformation, Ptsv2paymentsIssuerInformation, Ptsv2paymentsMerchantDefinedInformation, Ptsv2paymentsMerchantInformation, Ptsv2paymentsMerchantInformationMerchantDescriptor, Ptsv2paymentsMerchantInformationServiceFeeDescriptor, Ptsv2paymentsOrderInformation, Ptsv2paymentsOrderInformationAmountDetails, Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts, Ptsv2paymentsOrderInformationAmountDetailsSurcharge, Ptsv2paymentsOrderInformationAmountDetailsTaxDetails, Ptsv2paymentsOrderInformationBillTo, Ptsv2paymentsOrderInformationInvoiceDetails, Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum, Ptsv2paymentsOrderInformationLineItems, Ptsv2paymentsOrderInformationShipTo, Ptsv2paymentsOrderInformationShippingDetails, Ptsv2paymentsPaymentInformation, Ptsv2paymentsPaymentInformationBank, Ptsv2paymentsPaymentInformationBankAccount, Ptsv2paymentsPaymentInformationCard, Ptsv2paymentsPaymentInformationCustomer, Ptsv2paymentsPaymentInformationFluidData, Ptsv2paymentsPaymentInformationPaymentType, Ptsv2paymentsPaymentInformationPaymentTypeMethod, Ptsv2paymentsPaymentInformationTokenizedCard, Ptsv2paymentsPointOfSaleInformation, Ptsv2paymentsPointOfSaleInformationEmv, Ptsv2paymentsProcessingInformation, Ptsv2paymentsProcessingInformationAuthorizationOptions, Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator, Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction, Ptsv2paymentsProcessingInformationBankTransferOptions, Ptsv2paymentsProcessingInformationCaptureOptions, Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer, Ptsv2paymentsProcessingInformationPurchaseOptions, Ptsv2paymentsProcessingInformationRecurringOptions, Ptsv2paymentsRecipientInformation, Ptsv2paymentsidcapturesAggregatorInformation, Ptsv2paymentsidcapturesAggregatorInformationSubMerchant, Ptsv2paymentsidcapturesBuyerInformation, Ptsv2paymentsidcapturesInstallmentInformation, Ptsv2paymentsidcapturesMerchantInformation, Ptsv2paymentsidcapturesOrderInformation, Ptsv2paymentsidcapturesOrderInformationAmountDetails, Ptsv2paymentsidcapturesOrderInformationBillTo, Ptsv2paymentsidcapturesOrderInformationInvoiceDetails, Ptsv2paymentsidcapturesOrderInformationShipTo, Ptsv2paymentsidcapturesOrderInformationShippingDetails, Ptsv2paymentsidcapturesPaymentInformation, Ptsv2paymentsidcapturesPointOfSaleInformation, Ptsv2paymentsidcapturesPointOfSaleInformationEmv, Ptsv2paymentsidcapturesProcessingInformation, Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions, Ptsv2paymentsidcapturesProcessingInformationCaptureOptions, Ptsv2paymentsidrefundsMerchantInformation, Ptsv2paymentsidrefundsOrderInformation, Ptsv2paymentsidrefundsOrderInformationLineItems, Ptsv2paymentsidrefundsPaymentInformation, Ptsv2paymentsidrefundsPaymentInformationCard, Ptsv2paymentsidrefundsPointOfSaleInformation, Ptsv2paymentsidrefundsProcessingInformation, Ptsv2paymentsidrefundsProcessingInformationRecurringOptions, Ptsv2paymentsidreversalsClientReferenceInformation, Ptsv2paymentsidreversalsClientReferenceInformationPartner, Ptsv2paymentsidreversalsOrderInformation, Ptsv2paymentsidreversalsOrderInformationAmountDetails, Ptsv2paymentsidreversalsOrderInformationLineItems, Ptsv2paymentsidreversalsPointOfSaleInformation, Ptsv2paymentsidreversalsPointOfSaleInformationEmv, Ptsv2paymentsidreversalsProcessingInformation, Ptsv2paymentsidreversalsReversalInformation, Ptsv2paymentsidreversalsReversalInformationAmountDetails, Ptsv2paymentsidvoidsPaymentInformation, Ptsv2payoutsClientReferenceInformation, Ptsv2payoutsMerchantInformation, Ptsv2payoutsMerchantInformationMerchantDescriptor, Ptsv2payoutsOrderInformation, Ptsv2payoutsOrderInformationAmountDetails, Ptsv2payoutsOrderInformationAmountDetailsSurcharge, Ptsv2payoutsOrderInformationBillTo, Ptsv2payoutsPaymentInformation, Ptsv2payoutsPaymentInformationCard, Ptsv2payoutsProcessingInformation, Ptsv2payoutsProcessingInformationPayoutsOptions, Ptsv2payoutsRecipientInformation, Ptsv2payoutsSenderInformation, Ptsv2payoutsSenderInformationAccount, RefundCaptureRequest, RefundPaymentRequest, ReportingV3ConversionDetailsGet200Response, ReportingV3ConversionDetailsGet200ResponseConversionDetails, ReportingV3ConversionDetailsGet200ResponseNotes, ReportingV3NetFundingsGet200Response, ReportingV3NetFundingsGet200ResponseNetFundingSummaries, ReportingV3NetFundingsGet200ResponseTotalPurchases, ReportingV3NotificationofChangesGet200Response, ReportingV3NotificationofChangesGet200ResponseNotificationOfChanges, ReportingV3PaymentBatchSummariesGet200Response, ReportingV3PaymentBatchSummariesGet200ResponsePaymentBatchSummaries, ReportingV3PurchaseRefundDetailsGet200Response, ReportingV3PurchaseRefundDetailsGet200ResponseAuthorizations, ReportingV3PurchaseRefundDetailsGet200ResponseFeeAndFundingDetails, ReportingV3PurchaseRefundDetailsGet200ResponseOthers, ReportingV3PurchaseRefundDetailsGet200ResponseRequestDetails, ReportingV3PurchaseRefundDetailsGet200ResponseSettlementStatuses, ReportingV3PurchaseRefundDetailsGet200ResponseSettlements, ReportingV3ReportDefinitionsGet200Response, ReportingV3ReportDefinitionsGet200ResponseReportDefinitions, ReportingV3ReportDefinitionsNameGet200Response, ReportingV3ReportDefinitionsNameGet200ResponseAttributes, ReportingV3ReportSubscriptionsGet200Response, ReportingV3ReportSubscriptionsGet200ResponseSubscriptions, ReportingV3ReportsGet200Response, ReportingV3ReportsGet200ResponseReportSearchResults, ReportingV3ReportsIdGet200Response, Reportingv3ReportDownloadsGet400Response, Reportingv3ReportDownloadsGet400ResponseDetails, Reportingv3reportsReportPreferences, ResponseStatus, ResponseStatusDetails, RiskV1DecisionsPost201Response, RiskV1DecisionsPost201ResponsePaymentInformation, RiskV1DecisionsPost201ResponseRiskInformation, RiskV1DecisionsPost201ResponseRiskInformationInfoCodes, RiskV1DecisionsPost201ResponseRiskInformationIpAddress, RiskV1DecisionsPost201ResponseRiskInformationProfile, RiskV1DecisionsPost201ResponseRiskInformationProviders, RiskV1DecisionsPost201ResponseRiskInformationProvidersProviderName, RiskV1DecisionsPost201ResponseRiskInformationRules, RiskV1DecisionsPost201ResponseRiskInformationScore, RiskV1DecisionsPost201ResponseRiskInformationTravel, RiskV1DecisionsPost201ResponseRiskInformationTravelActualFinalDestination, RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDeparture, RiskV1DecisionsPost201ResponseRiskInformationTravelFirstDestination, RiskV1DecisionsPost201ResponseRiskInformationTravelLastDestination, RiskV1DecisionsPost201ResponseRiskInformationVelocity, RiskV1DecisionsPost201ResponseRiskInformationVelocityMorphing, RiskV1DecisionsPost400Response, Riskv1decisionsBuyerInformation, Riskv1decisionsCardVerification, Riskv1decisionsClientReferenceInformation, Riskv1decisionsDeviceInformation, Riskv1decisionsMerchantDefinedInformation, Riskv1decisionsOrderInformation, Riskv1decisionsOrderInformationAmountDetails, Riskv1decisionsOrderInformationBillTo, Riskv1decisionsOrderInformationLineItems, Riskv1decisionsOrderInformationPassenger, Riskv1decisionsOrderInformationShipTo, Riskv1decisionsOrderInformationShippingDetails, Riskv1decisionsPaymentInformation, Riskv1decisionsPaymentInformationCard, Riskv1decisionsPaymentInformationTokenizedCard, Riskv1decisionsProcessorInformation, Riskv1decisionsProcessorInformationAvs, Riskv1decisionsRiskInformation, Riskv1decisionsRiskInformationProfile, Riskv1decisionsTravelInformation, Riskv1decisionsTravelInformationLegs, SelfLinkBean, TmsV1InstrumentIdentifiersDelete409Response, TmsV1InstrumentIdentifiersDelete409ResponseLinks, TmsV1InstrumentIdentifiersDelete409ResponseLinksPaymentInstruments, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200Response, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbedded, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBankAccount, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBillTo, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformation, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationIssuedBy, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedBuyerInformationPersonalIdentification, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedCard, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedInstrumentIdentifier, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformation, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedMerchantInformationMerchantDescriptor, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedPaymentInstruments, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformation, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseEmbeddedProcessingInformationBankTransferOptions, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinks, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksFirst, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksLast, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksNext, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksPrev, TmsV1InstrumentIdentifiersPaymentInstrumentsGet200ResponseLinksSelf, TmsV1InstrumentIdentifiersPost200Response, TmsV1InstrumentIdentifiersPost200ResponseCard, TmsV1InstrumentIdentifiersPost200ResponseLinks, TmsV1InstrumentIdentifiersPost200ResponseLinksSelf, TmsV1InstrumentIdentifiersPost200ResponseMetadata, TmsV1InstrumentIdentifiersPost200ResponseProcessingInformation, TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptions, TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiator, TmsV1InstrumentIdentifiersPost200ResponseProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction, Tmsv1instrumentidentifiersBankAccount, Tmsv1instrumentidentifiersBillTo, Tmsv1instrumentidentifiersCard, Tmsv1instrumentidentifiersDetails, TokenizeParameters, TokenizeRequest, TokenizeResult, TssV2TransactionsGet200Response, TssV2TransactionsGet200ResponseApplicationInformation, TssV2TransactionsGet200ResponseApplicationInformationApplications, TssV2TransactionsGet200ResponseBuyerInformation, TssV2TransactionsGet200ResponseClientReferenceInformation, TssV2TransactionsGet200ResponseConsumerAuthenticationInformation, TssV2TransactionsGet200ResponseDeviceInformation, TssV2TransactionsGet200ResponseErrorInformation, TssV2TransactionsGet200ResponseFraudMarkingInformation, TssV2TransactionsGet200ResponseInstallmentInformation, TssV2TransactionsGet200ResponseLinks, TssV2TransactionsGet200ResponseMerchantInformation, TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor, TssV2TransactionsGet200ResponseOrderInformation, TssV2TransactionsGet200ResponseOrderInformationAmountDetails, TssV2TransactionsGet200ResponseOrderInformationBillTo, TssV2TransactionsGet200ResponseOrderInformationLineItems, TssV2TransactionsGet200ResponseOrderInformationShipTo, TssV2TransactionsGet200ResponseOrderInformationShippingDetails, TssV2TransactionsGet200ResponsePaymentInformation, TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures, TssV2TransactionsGet200ResponsePaymentInformationBank, TssV2TransactionsGet200ResponsePaymentInformationBankAccount, TssV2TransactionsGet200ResponsePaymentInformationBankMandate, TssV2TransactionsGet200ResponsePaymentInformationCard, TssV2TransactionsGet200ResponsePaymentInformationInvoice, TssV2TransactionsGet200ResponsePaymentInformationPaymentType, TssV2TransactionsGet200ResponsePaymentInformationPaymentTypeFundingSource, TssV2TransactionsGet200ResponsePointOfSaleInformation, TssV2TransactionsGet200ResponseProcessingInformation, TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions, TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions, TssV2TransactionsGet200ResponseProcessorInformation, TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults, TssV2TransactionsGet200ResponseProcessorInformationProcessor, TssV2TransactionsGet200ResponseRiskInformation, TssV2TransactionsGet200ResponseRiskInformationProfile, TssV2TransactionsGet200ResponseRiskInformationRules, TssV2TransactionsGet200ResponseRiskInformationScore, TssV2TransactionsGet200ResponseSenderInformation, TssV2TransactionsPost201Response, TssV2TransactionsPost201ResponseEmbedded, TssV2TransactionsPost201ResponseEmbeddedBuyerInformation, TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation, TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation, TssV2TransactionsPost201ResponseEmbeddedDeviceInformation, TssV2TransactionsPost201ResponseEmbeddedLinks, TssV2TransactionsPost201ResponseEmbeddedMerchantInformation, TssV2TransactionsPost201ResponseEmbeddedOrderInformation, TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo, TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo, TssV2TransactionsPost201ResponseEmbeddedPaymentInformation, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType, TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformation, TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformationPartner, TssV2TransactionsPost201ResponseEmbeddedProcessingInformation, TssV2TransactionsPost201ResponseEmbeddedProcessorInformation, TssV2TransactionsPost201ResponseEmbeddedRiskInformation, TssV2TransactionsPost201ResponseEmbeddedRiskInformationProviders, TssV2TransactionsPost201ResponseEmbeddedRiskInformationProvidersFingerprint, TssV2TransactionsPost201ResponseEmbeddedTransactionSummaries, TssV2TransactionsPost400Response, UmsV1UsersGet200Response, UmsV1UsersGet200ResponseAccountInformation, UmsV1UsersGet200ResponseContactInformation, UmsV1UsersGet200ResponseOrganizationInformation, UmsV1UsersGet200ResponseUsers, UpdateInstrumentIdentifierRequest, UpdatePaymentInstrumentRequest, V1FileDetailsGet200Response, V1FileDetailsGet200ResponseFileDetails, V1FileDetailsGet200ResponseLinks, V1FileDetailsGet200ResponseLinksFiles, V1FileDetailsGet200ResponseLinksSelf, VoidCaptureRequest, VoidCreditRequest, VoidPaymentRequest, VoidRefundRequest, CaptureApi, ConversionDetailsApi, CreditApi, DecisionManagerApi, DownloadDTDApi, DownloadXSDApi, InstrumentIdentifierApi, KeyGenerationApi, NetFundingsApi, NotificationOfChangesApi, PaymentBatchSummariesApi, PaymentInstrumentApi, PaymentsApi, PayoutsApi, PurchaseAndRefundDetailsApi, RefundApi, ReportDefinitionsApi, ReportDownloadsApi, ReportSubscriptionsApi, ReportsApi, ReversalApi, SearchTransactionsApi, SecureFileShareApi, TokenizationApi, TransactionBatchesApi, TransactionDetailsApi, UserManagementApi, VoidApi) { 'use strict'; /** @@ -91,6 +91,11 @@ * @property {module:model/CardInfo} */ CardInfo: CardInfo, + /** + * The CreateAdhocReportRequest model constructor. + * @property {module:model/CreateAdhocReportRequest} + */ + CreateAdhocReportRequest: CreateAdhocReportRequest, /** * The CreateCreditRequest model constructor. * @property {module:model/CreateCreditRequest} @@ -116,6 +121,11 @@ * @property {module:model/CreatePaymentRequest} */ CreatePaymentRequest: CreatePaymentRequest, + /** + * The CreateReportSubscriptionRequest model constructor. + * @property {module:model/CreateReportSubscriptionRequest} + */ + CreateReportSubscriptionRequest: CreateReportSubscriptionRequest, /** * The CreateSearchRequest model constructor. * @property {module:model/CreateSearchRequest} @@ -232,10 +242,10 @@ */ InlineResponse4001: InlineResponse4001, /** - * The InlineResponse4001Fields model constructor. - * @property {module:model/InlineResponse4001Fields} + * The InlineResponse400Fields model constructor. + * @property {module:model/InlineResponse400Fields} */ - InlineResponse4001Fields: InlineResponse4001Fields, + InlineResponse400Fields: InlineResponse400Fields, /** * The InlineResponseDefault model constructor. * @property {module:model/InlineResponseDefault} @@ -841,6 +851,16 @@ * @property {module:model/Ptsv2creditsProcessingInformationBankTransferOptions} */ Ptsv2creditsProcessingInformationBankTransferOptions: Ptsv2creditsProcessingInformationBankTransferOptions, + /** + * The Ptsv2creditsProcessingInformationElectronicBenefitsTransfer model constructor. + * @property {module:model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer} + */ + Ptsv2creditsProcessingInformationElectronicBenefitsTransfer: Ptsv2creditsProcessingInformationElectronicBenefitsTransfer, + /** + * The Ptsv2creditsProcessingInformationPurchaseOptions model constructor. + * @property {module:model/Ptsv2creditsProcessingInformationPurchaseOptions} + */ + Ptsv2creditsProcessingInformationPurchaseOptions: Ptsv2creditsProcessingInformationPurchaseOptions, /** * The Ptsv2paymentsAggregatorInformation model constructor. * @property {module:model/Ptsv2paymentsAggregatorInformation} @@ -996,6 +1016,16 @@ * @property {module:model/Ptsv2paymentsPaymentInformationFluidData} */ Ptsv2paymentsPaymentInformationFluidData: Ptsv2paymentsPaymentInformationFluidData, + /** + * The Ptsv2paymentsPaymentInformationPaymentType model constructor. + * @property {module:model/Ptsv2paymentsPaymentInformationPaymentType} + */ + Ptsv2paymentsPaymentInformationPaymentType: Ptsv2paymentsPaymentInformationPaymentType, + /** + * The Ptsv2paymentsPaymentInformationPaymentTypeMethod model constructor. + * @property {module:model/Ptsv2paymentsPaymentInformationPaymentTypeMethod} + */ + Ptsv2paymentsPaymentInformationPaymentTypeMethod: Ptsv2paymentsPaymentInformationPaymentTypeMethod, /** * The Ptsv2paymentsPaymentInformationTokenizedCard model constructor. * @property {module:model/Ptsv2paymentsPaymentInformationTokenizedCard} @@ -1041,6 +1071,16 @@ * @property {module:model/Ptsv2paymentsProcessingInformationCaptureOptions} */ Ptsv2paymentsProcessingInformationCaptureOptions: Ptsv2paymentsProcessingInformationCaptureOptions, + /** + * The Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer model constructor. + * @property {module:model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer} + */ + Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer: Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer, + /** + * The Ptsv2paymentsProcessingInformationPurchaseOptions model constructor. + * @property {module:model/Ptsv2paymentsProcessingInformationPurchaseOptions} + */ + Ptsv2paymentsProcessingInformationPurchaseOptions: Ptsv2paymentsProcessingInformationPurchaseOptions, /** * The Ptsv2paymentsProcessingInformationRecurringOptions model constructor. * @property {module:model/Ptsv2paymentsProcessingInformationRecurringOptions} @@ -1226,6 +1266,11 @@ * @property {module:model/Ptsv2paymentsidreversalsReversalInformationAmountDetails} */ Ptsv2paymentsidreversalsReversalInformationAmountDetails: Ptsv2paymentsidreversalsReversalInformationAmountDetails, + /** + * The Ptsv2paymentsidvoidsPaymentInformation model constructor. + * @property {module:model/Ptsv2paymentsidvoidsPaymentInformation} + */ + Ptsv2paymentsidvoidsPaymentInformation: Ptsv2paymentsidvoidsPaymentInformation, /** * The Ptsv2payoutsClientReferenceInformation model constructor. * @property {module:model/Ptsv2payoutsClientReferenceInformation} @@ -1451,16 +1496,6 @@ * @property {module:model/Reportingv3reportsReportPreferences} */ Reportingv3reportsReportPreferences: Reportingv3reportsReportPreferences, - /** - * The RequestBody model constructor. - * @property {module:model/RequestBody} - */ - RequestBody: RequestBody, - /** - * The RequestBody1 model constructor. - * @property {module:model/RequestBody1} - */ - RequestBody1: RequestBody1, /** * The ResponseStatus model constructor. * @property {module:model/ResponseStatus} diff --git a/src/model/RequestBody.js b/src/model/CreateAdhocReportRequest.js similarity index 87% rename from src/model/RequestBody.js rename to src/model/CreateAdhocReportRequest.js index 5575b852..0c0a281f 100644 --- a/src/model/RequestBody.js +++ b/src/model/CreateAdhocReportRequest.js @@ -25,7 +25,7 @@ if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.RequestBody = factory(root.CyberSource.ApiClient, root.CyberSource.Reportingv3reportsReportPreferences); + root.CyberSource.CreateAdhocReportRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Reportingv3reportsReportPreferences); } }(this, function(ApiClient, Reportingv3reportsReportPreferences) { 'use strict'; @@ -34,14 +34,14 @@ /** - * The RequestBody model module. - * @module model/RequestBody + * The CreateAdhocReportRequest model module. + * @module model/CreateAdhocReportRequest * @version 0.0.1 */ /** - * Constructs a new RequestBody. - * @alias module:model/RequestBody + * Constructs a new CreateAdhocReportRequest. + * @alias module:model/CreateAdhocReportRequest * @class */ var exports = function() { @@ -61,11 +61,11 @@ }; /** - * Constructs a RequestBody from a plain JavaScript object, optionally creating a new instance. + * Constructs a CreateAdhocReportRequest 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/RequestBody} obj Optional instance to populate. - * @return {module:model/RequestBody} The populated RequestBody instance. + * @param {module:model/CreateAdhocReportRequest} obj Optional instance to populate. + * @return {module:model/CreateAdhocReportRequest} The populated CreateAdhocReportRequest instance. */ exports.constructFromObject = function(data, obj) { if (data) { diff --git a/src/model/RequestBody1.js b/src/model/CreateReportSubscriptionRequest.js similarity index 89% rename from src/model/RequestBody1.js rename to src/model/CreateReportSubscriptionRequest.js index 7552c87c..8d80f636 100644 --- a/src/model/RequestBody1.js +++ b/src/model/CreateReportSubscriptionRequest.js @@ -25,7 +25,7 @@ if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.RequestBody1 = factory(root.CyberSource.ApiClient, root.CyberSource.Reportingv3reportsReportPreferences); + root.CyberSource.CreateReportSubscriptionRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Reportingv3reportsReportPreferences); } }(this, function(ApiClient, Reportingv3reportsReportPreferences) { 'use strict'; @@ -34,14 +34,14 @@ /** - * The RequestBody1 model module. - * @module model/RequestBody1 + * The CreateReportSubscriptionRequest model module. + * @module model/CreateReportSubscriptionRequest * @version 0.0.1 */ /** - * Constructs a new RequestBody1. - * @alias module:model/RequestBody1 + * Constructs a new CreateReportSubscriptionRequest. + * @alias module:model/CreateReportSubscriptionRequest * @class * @param reportDefinitionName {String} Valid Report Definition Name * @param reportFields {Array.} @@ -69,11 +69,11 @@ }; /** - * Constructs a RequestBody1 from a plain JavaScript object, optionally creating a new instance. + * Constructs a CreateReportSubscriptionRequest 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/RequestBody1} obj Optional instance to populate. - * @return {module:model/RequestBody1} The populated RequestBody1 instance. + * @param {module:model/CreateReportSubscriptionRequest} obj Optional instance to populate. + * @return {module:model/CreateReportSubscriptionRequest} The populated CreateReportSubscriptionRequest instance. */ exports.constructFromObject = function(data, obj) { if (data) { diff --git a/src/model/Error.js b/src/model/Error.js index e084cc6a..64f54f8e 100644 --- a/src/model/Error.js +++ b/src/model/Error.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/ErrorLinks', 'model/InlineResponseDefaultResponseStatus'], factory); + define(['ApiClient', 'model/Tmsv1instrumentidentifiersDetails'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./ErrorLinks'), require('./InlineResponseDefaultResponseStatus')); + module.exports = factory(require('../ApiClient'), require('./Tmsv1instrumentidentifiersDetails')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.Error = factory(root.CyberSource.ApiClient, root.CyberSource.ErrorLinks, root.CyberSource.InlineResponseDefaultResponseStatus); + root.CyberSource.Error = factory(root.CyberSource.ApiClient, root.CyberSource.Tmsv1instrumentidentifiersDetails); } -}(this, function(ApiClient, ErrorLinks, InlineResponseDefaultResponseStatus) { +}(this, function(ApiClient, Tmsv1instrumentidentifiersDetails) { 'use strict'; @@ -49,6 +49,7 @@ + }; /** @@ -62,24 +63,32 @@ if (data) { obj = obj || new exports(); - if (data.hasOwnProperty('responseStatus')) { - obj['responseStatus'] = InlineResponseDefaultResponseStatus.constructFromObject(data['responseStatus']); + if (data.hasOwnProperty('type')) { + obj['type'] = ApiClient.convertToType(data['type'], 'String'); + } + if (data.hasOwnProperty('message')) { + obj['message'] = ApiClient.convertToType(data['message'], 'String'); } - if (data.hasOwnProperty('_links')) { - obj['_links'] = ErrorLinks.constructFromObject(data['_links']); + if (data.hasOwnProperty('details')) { + obj['details'] = Tmsv1instrumentidentifiersDetails.constructFromObject(data['details']); } } return obj; } /** - * @member {module:model/InlineResponseDefaultResponseStatus} responseStatus + * @member {String} type + */ + exports.prototype['type'] = undefined; + /** + * The detailed message related to the type stated above. + * @member {String} message */ - exports.prototype['responseStatus'] = undefined; + exports.prototype['message'] = undefined; /** - * @member {module:model/ErrorLinks} _links + * @member {module:model/Tmsv1instrumentidentifiersDetails} details */ - exports.prototype['_links'] = undefined; + exports.prototype['details'] = undefined; diff --git a/src/model/ErrorBean.js b/src/model/ErrorBean.js index 7c2e1d82..32886357 100644 --- a/src/model/ErrorBean.js +++ b/src/model/ErrorBean.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/InlineResponse4001Fields'], factory); + define(['ApiClient', 'model/InlineResponse400Fields'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./InlineResponse4001Fields')); + module.exports = factory(require('../ApiClient'), require('./InlineResponse400Fields')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.ErrorBean = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse4001Fields); + root.CyberSource.ErrorBean = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse400Fields); } -}(this, function(ApiClient, InlineResponse4001Fields) { +}(this, function(ApiClient, InlineResponse400Fields) { 'use strict'; @@ -85,7 +85,7 @@ obj['detail'] = ApiClient.convertToType(data['detail'], 'String'); } if (data.hasOwnProperty('fields')) { - obj['fields'] = ApiClient.convertToType(data['fields'], [InlineResponse4001Fields]); + obj['fields'] = ApiClient.convertToType(data['fields'], [InlineResponse400Fields]); } } return obj; @@ -118,7 +118,7 @@ exports.prototype['detail'] = undefined; /** * Error fields List - * @member {Array.} fields + * @member {Array.} fields */ exports.prototype['fields'] = undefined; diff --git a/src/model/ErrorLinks.js b/src/model/ErrorLinks.js index 9f0d28c1..b154e927 100644 --- a/src/model/ErrorLinks.js +++ b/src/model/ErrorLinks.js @@ -63,31 +63,31 @@ if (data) { obj = obj || new exports(); - if (data.hasOwnProperty('self')) { - obj['self'] = InlineResponseDefaultLinksNext.constructFromObject(data['self']); + if (data.hasOwnProperty('next')) { + obj['next'] = ApiClient.convertToType(data['next'], [InlineResponseDefaultLinksNext]); } if (data.hasOwnProperty('documentation')) { obj['documentation'] = ApiClient.convertToType(data['documentation'], [InlineResponseDefaultLinksNext]); } - if (data.hasOwnProperty('next')) { - obj['next'] = ApiClient.convertToType(data['next'], [InlineResponseDefaultLinksNext]); + if (data.hasOwnProperty('self')) { + obj['self'] = InlineResponseDefaultLinksNext.constructFromObject(data['self']); } } return obj; } /** - * @member {module:model/InlineResponseDefaultLinksNext} self + * @member {Array.} next */ - exports.prototype['self'] = undefined; + exports.prototype['next'] = undefined; /** * @member {Array.} documentation */ exports.prototype['documentation'] = undefined; /** - * @member {Array.} next + * @member {module:model/InlineResponseDefaultLinksNext} self */ - exports.prototype['next'] = undefined; + exports.prototype['self'] = undefined; diff --git a/src/model/ErrorResponse.js b/src/model/ErrorResponse.js index f67109fa..04cd0e28 100644 --- a/src/model/ErrorResponse.js +++ b/src/model/ErrorResponse.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/InlineResponseDefaultLinks', 'model/InlineResponseDefaultResponseStatus'], factory); + define(['ApiClient', 'model/InlineResponse4001'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./InlineResponseDefaultLinks'), require('./InlineResponseDefaultResponseStatus')); + module.exports = factory(require('../ApiClient'), require('./InlineResponse4001')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.ErrorResponse = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponseDefaultLinks, root.CyberSource.InlineResponseDefaultResponseStatus); + root.CyberSource.ErrorResponse = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse4001); } -}(this, function(ApiClient, InlineResponseDefaultLinks, InlineResponseDefaultResponseStatus) { +}(this, function(ApiClient, InlineResponse4001) { 'use strict'; @@ -43,12 +43,14 @@ * Constructs a new ErrorResponse. * @alias module:model/ErrorResponse * @class + * @extends Array */ var exports = function() { var _this = this; + _this = new Array(); + Object.setPrototypeOf(_this, exports); - - + return _this; }; /** @@ -61,25 +63,12 @@ exports.constructFromObject = function(data, obj) { if (data) { obj = obj || new exports(); + ApiClient.constructFromObject(data, obj, 'InlineResponse4001'); - if (data.hasOwnProperty('responseStatus')) { - obj['responseStatus'] = InlineResponseDefaultResponseStatus.constructFromObject(data['responseStatus']); - } - if (data.hasOwnProperty('_links')) { - obj['_links'] = InlineResponseDefaultLinks.constructFromObject(data['_links']); - } } return obj; } - /** - * @member {module:model/InlineResponseDefaultResponseStatus} responseStatus - */ - exports.prototype['responseStatus'] = undefined; - /** - * @member {module:model/InlineResponseDefaultLinks} _links - */ - exports.prototype['_links'] = undefined; diff --git a/src/model/ErrorResponseWithHAL.js b/src/model/ErrorResponseWithHAL.js index 521c36b5..443c9b89 100644 --- a/src/model/ErrorResponseWithHAL.js +++ b/src/model/ErrorResponseWithHAL.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/InlineResponse400'], factory); + define(['ApiClient', 'model/InlineResponse4001'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./InlineResponse400')); + module.exports = factory(require('../ApiClient'), require('./InlineResponse4001')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.ErrorResponseWithHAL = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse400); + root.CyberSource.ErrorResponseWithHAL = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse4001); } -}(this, function(ApiClient, InlineResponse400) { +}(this, function(ApiClient, InlineResponse4001) { 'use strict'; @@ -63,7 +63,7 @@ exports.constructFromObject = function(data, obj) { if (data) { obj = obj || new exports(); - ApiClient.constructFromObject(data, obj, 'InlineResponse400'); + ApiClient.constructFromObject(data, obj, 'InlineResponse4001'); } return obj; diff --git a/src/model/InlineResponse400.js b/src/model/InlineResponse400.js index 7490c44d..ad146bbf 100644 --- a/src/model/InlineResponse400.js +++ b/src/model/InlineResponse400.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Tmsv1instrumentidentifiersDetails'], factory); + define(['ApiClient', 'model/InlineResponse400Fields'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Tmsv1instrumentidentifiersDetails')); + module.exports = factory(require('../ApiClient'), require('./InlineResponse400Fields')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.InlineResponse400 = factory(root.CyberSource.ApiClient, root.CyberSource.Tmsv1instrumentidentifiersDetails); + root.CyberSource.InlineResponse400 = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse400Fields); } -}(this, function(ApiClient, Tmsv1instrumentidentifiersDetails) { +}(this, function(ApiClient, InlineResponse400Fields) { 'use strict'; @@ -41,12 +41,18 @@ /** * Constructs a new InlineResponse400. + * Error Bean * @alias module:model/InlineResponse400 * @class + * @param code {String} Error code + * @param message {String} Error message */ - var exports = function() { + var exports = function(code, message) { var _this = this; + _this['code'] = code; + _this['message'] = message; + @@ -63,32 +69,58 @@ if (data) { obj = obj || new exports(); - if (data.hasOwnProperty('type')) { - obj['type'] = ApiClient.convertToType(data['type'], 'String'); + if (data.hasOwnProperty('code')) { + obj['code'] = ApiClient.convertToType(data['code'], 'String'); } if (data.hasOwnProperty('message')) { obj['message'] = ApiClient.convertToType(data['message'], 'String'); } - if (data.hasOwnProperty('details')) { - obj['details'] = Tmsv1instrumentidentifiersDetails.constructFromObject(data['details']); + if (data.hasOwnProperty('localizationKey')) { + obj['localizationKey'] = ApiClient.convertToType(data['localizationKey'], 'String'); + } + if (data.hasOwnProperty('correlationId')) { + obj['correlationId'] = ApiClient.convertToType(data['correlationId'], 'String'); + } + if (data.hasOwnProperty('detail')) { + obj['detail'] = ApiClient.convertToType(data['detail'], 'String'); + } + if (data.hasOwnProperty('fields')) { + obj['fields'] = ApiClient.convertToType(data['fields'], [InlineResponse400Fields]); } } return obj; } /** - * @member {String} type + * Error code + * @member {String} code */ - exports.prototype['type'] = undefined; + exports.prototype['code'] = undefined; /** - * The detailed message related to the type stated above. + * Error message * @member {String} message */ exports.prototype['message'] = undefined; /** - * @member {module:model/Tmsv1instrumentidentifiersDetails} details + * Localization Key Name + * @member {String} localizationKey + */ + exports.prototype['localizationKey'] = undefined; + /** + * Correlation Id + * @member {String} correlationId + */ + exports.prototype['correlationId'] = undefined; + /** + * Error Detail + * @member {String} detail + */ + exports.prototype['detail'] = undefined; + /** + * Error fields List + * @member {Array.} fields */ - exports.prototype['details'] = undefined; + exports.prototype['fields'] = undefined; diff --git a/src/model/InlineResponse4001.js b/src/model/InlineResponse4001.js index 353c83d3..3e7ba51b 100644 --- a/src/model/InlineResponse4001.js +++ b/src/model/InlineResponse4001.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/InlineResponse4001Fields'], factory); + define(['ApiClient', 'model/Tmsv1instrumentidentifiersDetails'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./InlineResponse4001Fields')); + module.exports = factory(require('../ApiClient'), require('./Tmsv1instrumentidentifiersDetails')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.InlineResponse4001 = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponse4001Fields); + root.CyberSource.InlineResponse4001 = factory(root.CyberSource.ApiClient, root.CyberSource.Tmsv1instrumentidentifiersDetails); } -}(this, function(ApiClient, InlineResponse4001Fields) { +}(this, function(ApiClient, Tmsv1instrumentidentifiersDetails) { 'use strict'; @@ -41,18 +41,12 @@ /** * Constructs a new InlineResponse4001. - * Error Bean * @alias module:model/InlineResponse4001 * @class - * @param code {String} Error code - * @param message {String} Error message */ - var exports = function(code, message) { + var exports = function() { var _this = this; - _this['code'] = code; - _this['message'] = message; - @@ -69,58 +63,32 @@ if (data) { obj = obj || new exports(); - if (data.hasOwnProperty('code')) { - obj['code'] = ApiClient.convertToType(data['code'], 'String'); + if (data.hasOwnProperty('type')) { + obj['type'] = ApiClient.convertToType(data['type'], 'String'); } if (data.hasOwnProperty('message')) { obj['message'] = ApiClient.convertToType(data['message'], 'String'); } - if (data.hasOwnProperty('localizationKey')) { - obj['localizationKey'] = ApiClient.convertToType(data['localizationKey'], 'String'); - } - if (data.hasOwnProperty('correlationId')) { - obj['correlationId'] = ApiClient.convertToType(data['correlationId'], 'String'); - } - if (data.hasOwnProperty('detail')) { - obj['detail'] = ApiClient.convertToType(data['detail'], 'String'); - } - if (data.hasOwnProperty('fields')) { - obj['fields'] = ApiClient.convertToType(data['fields'], [InlineResponse4001Fields]); + if (data.hasOwnProperty('details')) { + obj['details'] = Tmsv1instrumentidentifiersDetails.constructFromObject(data['details']); } } return obj; } /** - * Error code - * @member {String} code + * @member {String} type */ - exports.prototype['code'] = undefined; + exports.prototype['type'] = undefined; /** - * Error message + * The detailed message related to the type stated above. * @member {String} message */ exports.prototype['message'] = undefined; /** - * Localization Key Name - * @member {String} localizationKey - */ - exports.prototype['localizationKey'] = undefined; - /** - * Correlation Id - * @member {String} correlationId - */ - exports.prototype['correlationId'] = undefined; - /** - * Error Detail - * @member {String} detail - */ - exports.prototype['detail'] = undefined; - /** - * Error fields List - * @member {Array.} fields + * @member {module:model/Tmsv1instrumentidentifiersDetails} details */ - exports.prototype['fields'] = undefined; + exports.prototype['details'] = undefined; diff --git a/src/model/InlineResponse4001Fields.js b/src/model/InlineResponse400Fields.js similarity index 78% rename from src/model/InlineResponse4001Fields.js rename to src/model/InlineResponse400Fields.js index 18930daa..2316e541 100644 --- a/src/model/InlineResponse4001Fields.js +++ b/src/model/InlineResponse400Fields.js @@ -25,7 +25,7 @@ if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.InlineResponse4001Fields = factory(root.CyberSource.ApiClient); + root.CyberSource.InlineResponse400Fields = factory(root.CyberSource.ApiClient); } }(this, function(ApiClient) { 'use strict'; @@ -34,15 +34,15 @@ /** - * The InlineResponse4001Fields model module. - * @module model/InlineResponse4001Fields + * The InlineResponse400Fields model module. + * @module model/InlineResponse400Fields * @version 0.0.1 */ /** - * Constructs a new InlineResponse4001Fields. + * Constructs a new InlineResponse400Fields. * Provide validation failed input field details - * @alias module:model/InlineResponse4001Fields + * @alias module:model/InlineResponse400Fields * @class */ var exports = function() { @@ -54,11 +54,11 @@ }; /** - * Constructs a InlineResponse4001Fields from a plain JavaScript object, optionally creating a new instance. + * Constructs a InlineResponse400Fields 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/InlineResponse4001Fields} obj Optional instance to populate. - * @return {module:model/InlineResponse4001Fields} The populated InlineResponse4001Fields instance. + * @param {module:model/InlineResponse400Fields} obj Optional instance to populate. + * @return {module:model/InlineResponse400Fields} The populated InlineResponse400Fields instance. */ exports.constructFromObject = function(data, obj) { if (data) { diff --git a/src/model/Link.js b/src/model/Link.js index d17acf9f..b718f3ec 100644 --- a/src/model/Link.js +++ b/src/model/Link.js @@ -48,8 +48,6 @@ var _this = this; - - }; /** @@ -66,31 +64,14 @@ if (data.hasOwnProperty('href')) { obj['href'] = ApiClient.convertToType(data['href'], 'String'); } - if (data.hasOwnProperty('title')) { - obj['title'] = ApiClient.convertToType(data['title'], 'String'); - } - if (data.hasOwnProperty('method')) { - obj['method'] = ApiClient.convertToType(data['method'], 'String'); - } } return obj; } /** - * URI of the linked resource. * @member {String} href */ exports.prototype['href'] = undefined; - /** - * Label of the linked resource. - * @member {String} title - */ - exports.prototype['title'] = undefined; - /** - * HTTP method of the linked resource. - * @member {String} method - */ - exports.prototype['method'] = undefined; diff --git a/src/model/Links.js b/src/model/Links.js index 5656a36b..9e5dcdab 100644 --- a/src/model/Links.js +++ b/src/model/Links.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/InlineResponseDefaultLinksNext'], factory); + define(['ApiClient', 'model/TmsV1InstrumentIdentifiersPost200ResponseLinksSelf'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./InlineResponseDefaultLinksNext')); + module.exports = factory(require('../ApiClient'), require('./TmsV1InstrumentIdentifiersPost200ResponseLinksSelf')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.Links = factory(root.CyberSource.ApiClient, root.CyberSource.InlineResponseDefaultLinksNext); + root.CyberSource.Links = factory(root.CyberSource.ApiClient, root.CyberSource.TmsV1InstrumentIdentifiersPost200ResponseLinksSelf); } -}(this, function(ApiClient, InlineResponseDefaultLinksNext) { +}(this, function(ApiClient, TmsV1InstrumentIdentifiersPost200ResponseLinksSelf) { 'use strict'; @@ -64,30 +64,30 @@ obj = obj || new exports(); if (data.hasOwnProperty('self')) { - obj['self'] = InlineResponseDefaultLinksNext.constructFromObject(data['self']); + obj['self'] = TmsV1InstrumentIdentifiersPost200ResponseLinksSelf.constructFromObject(data['self']); } - if (data.hasOwnProperty('documentation')) { - obj['documentation'] = ApiClient.convertToType(data['documentation'], [InlineResponseDefaultLinksNext]); + if (data.hasOwnProperty('ancestor')) { + obj['ancestor'] = TmsV1InstrumentIdentifiersPost200ResponseLinksSelf.constructFromObject(data['ancestor']); } - if (data.hasOwnProperty('next')) { - obj['next'] = ApiClient.convertToType(data['next'], [InlineResponseDefaultLinksNext]); + if (data.hasOwnProperty('successor')) { + obj['successor'] = TmsV1InstrumentIdentifiersPost200ResponseLinksSelf.constructFromObject(data['successor']); } } return obj; } /** - * @member {module:model/InlineResponseDefaultLinksNext} self + * @member {module:model/TmsV1InstrumentIdentifiersPost200ResponseLinksSelf} self */ exports.prototype['self'] = undefined; /** - * @member {Array.} documentation + * @member {module:model/TmsV1InstrumentIdentifiersPost200ResponseLinksSelf} ancestor */ - exports.prototype['documentation'] = undefined; + exports.prototype['ancestor'] = undefined; /** - * @member {Array.} next + * @member {module:model/TmsV1InstrumentIdentifiersPost200ResponseLinksSelf} successor */ - exports.prototype['next'] = undefined; + exports.prototype['successor'] = undefined; diff --git a/src/model/Ptsv2creditsProcessingInformation.js b/src/model/Ptsv2creditsProcessingInformation.js index 3f587b86..2f5e24ca 100644 --- a/src/model/Ptsv2creditsProcessingInformation.js +++ b/src/model/Ptsv2creditsProcessingInformation.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Ptsv2creditsProcessingInformationBankTransferOptions', 'model/Ptsv2paymentsidrefundsProcessingInformationRecurringOptions'], factory); + define(['ApiClient', 'model/Ptsv2creditsProcessingInformationBankTransferOptions', 'model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer', 'model/Ptsv2creditsProcessingInformationPurchaseOptions', 'model/Ptsv2paymentsidrefundsProcessingInformationRecurringOptions'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Ptsv2creditsProcessingInformationBankTransferOptions'), require('./Ptsv2paymentsidrefundsProcessingInformationRecurringOptions')); + module.exports = factory(require('../ApiClient'), require('./Ptsv2creditsProcessingInformationBankTransferOptions'), require('./Ptsv2creditsProcessingInformationElectronicBenefitsTransfer'), require('./Ptsv2creditsProcessingInformationPurchaseOptions'), require('./Ptsv2paymentsidrefundsProcessingInformationRecurringOptions')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.Ptsv2creditsProcessingInformation = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2creditsProcessingInformationBankTransferOptions, root.CyberSource.Ptsv2paymentsidrefundsProcessingInformationRecurringOptions); + root.CyberSource.Ptsv2creditsProcessingInformation = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2creditsProcessingInformationBankTransferOptions, root.CyberSource.Ptsv2creditsProcessingInformationElectronicBenefitsTransfer, root.CyberSource.Ptsv2creditsProcessingInformationPurchaseOptions, root.CyberSource.Ptsv2paymentsidrefundsProcessingInformationRecurringOptions); } -}(this, function(ApiClient, Ptsv2creditsProcessingInformationBankTransferOptions, Ptsv2paymentsidrefundsProcessingInformationRecurringOptions) { +}(this, function(ApiClient, Ptsv2creditsProcessingInformationBankTransferOptions, Ptsv2creditsProcessingInformationElectronicBenefitsTransfer, Ptsv2creditsProcessingInformationPurchaseOptions, Ptsv2paymentsidrefundsProcessingInformationRecurringOptions) { 'use strict'; @@ -58,6 +58,8 @@ + + }; /** @@ -104,6 +106,12 @@ if (data.hasOwnProperty('bankTransferOptions')) { obj['bankTransferOptions'] = Ptsv2creditsProcessingInformationBankTransferOptions.constructFromObject(data['bankTransferOptions']); } + if (data.hasOwnProperty('purchaseOptions')) { + obj['purchaseOptions'] = Ptsv2creditsProcessingInformationPurchaseOptions.constructFromObject(data['purchaseOptions']); + } + if (data.hasOwnProperty('electronicBenefitsTransfer')) { + obj['electronicBenefitsTransfer'] = Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.constructFromObject(data['electronicBenefitsTransfer']); + } } return obj; } @@ -161,6 +169,14 @@ * @member {module:model/Ptsv2creditsProcessingInformationBankTransferOptions} bankTransferOptions */ exports.prototype['bankTransferOptions'] = undefined; + /** + * @member {module:model/Ptsv2creditsProcessingInformationPurchaseOptions} purchaseOptions + */ + exports.prototype['purchaseOptions'] = undefined; + /** + * @member {module:model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer} electronicBenefitsTransfer + */ + exports.prototype['electronicBenefitsTransfer'] = undefined; diff --git a/src/model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.js b/src/model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.js new file mode 100644 index 00000000..4a1c00a7 --- /dev/null +++ b/src/model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.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.Ptsv2creditsProcessingInformationElectronicBenefitsTransfer = factory(root.CyberSource.ApiClient); + } +}(this, function(ApiClient) { + 'use strict'; + + + + + /** + * The Ptsv2creditsProcessingInformationElectronicBenefitsTransfer model module. + * @module model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer + * @version 0.0.1 + */ + + /** + * Constructs a new Ptsv2creditsProcessingInformationElectronicBenefitsTransfer. + * @alias module:model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer + * @class + */ + var exports = function() { + var _this = this; + + + }; + + /** + * Constructs a Ptsv2creditsProcessingInformationElectronicBenefitsTransfer 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/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer} obj Optional instance to populate. + * @return {module:model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer} The populated Ptsv2creditsProcessingInformationElectronicBenefitsTransfer instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('category')) { + obj['category'] = ApiClient.convertToType(data['category'], 'String'); + } + } + return obj; + } + + /** + * Flag that specifies the category for the EBT transaction. Possible values: - `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. - `FOOD`: Food stamp benefits, which can be used only to purchase food items authorized by the USDA SNAP program. + * @member {String} category + */ + exports.prototype['category'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/Ptsv2creditsProcessingInformationPurchaseOptions.js b/src/model/Ptsv2creditsProcessingInformationPurchaseOptions.js new file mode 100644 index 00000000..6cbca09f --- /dev/null +++ b/src/model/Ptsv2creditsProcessingInformationPurchaseOptions.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.Ptsv2creditsProcessingInformationPurchaseOptions = factory(root.CyberSource.ApiClient); + } +}(this, function(ApiClient) { + 'use strict'; + + + + + /** + * The Ptsv2creditsProcessingInformationPurchaseOptions model module. + * @module model/Ptsv2creditsProcessingInformationPurchaseOptions + * @version 0.0.1 + */ + + /** + * Constructs a new Ptsv2creditsProcessingInformationPurchaseOptions. + * @alias module:model/Ptsv2creditsProcessingInformationPurchaseOptions + * @class + */ + var exports = function() { + var _this = this; + + + }; + + /** + * Constructs a Ptsv2creditsProcessingInformationPurchaseOptions 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/Ptsv2creditsProcessingInformationPurchaseOptions} obj Optional instance to populate. + * @return {module:model/Ptsv2creditsProcessingInformationPurchaseOptions} The populated Ptsv2creditsProcessingInformationPurchaseOptions instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('isElectronicBenefitsTransfer')) { + obj['isElectronicBenefitsTransfer'] = ApiClient.convertToType(data['isElectronicBenefitsTransfer'], 'Boolean'); + } + } + return obj; + } + + /** + * Flag that indicates that this transaction is an EBT transaction.Possible values: - **true** - **false** + * @member {Boolean} isElectronicBenefitsTransfer + */ + exports.prototype['isElectronicBenefitsTransfer'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/Ptsv2paymentsOrderInformationAmountDetails.js b/src/model/Ptsv2paymentsOrderInformationAmountDetails.js index 2458d1ad..c494db7b 100644 --- a/src/model/Ptsv2paymentsOrderInformationAmountDetails.js +++ b/src/model/Ptsv2paymentsOrderInformationAmountDetails.js @@ -68,6 +68,7 @@ + }; @@ -152,6 +153,9 @@ if (data.hasOwnProperty('originalCurrency')) { obj['originalCurrency'] = ApiClient.convertToType(data['originalCurrency'], 'String'); } + if (data.hasOwnProperty('cashbackAmount')) { + obj['cashbackAmount'] = ApiClient.convertToType(data['cashbackAmount'], 'String'); + } } return obj; } @@ -268,6 +272,11 @@ * @member {String} originalCurrency */ exports.prototype['originalCurrency'] = undefined; + /** + * Cashback amount requested by the customer. If a cashback amount is included in the request, it must be included in the orderInformation.amountDetails.totalAmount value. + * @member {String} cashbackAmount + */ + exports.prototype['cashbackAmount'] = undefined; diff --git a/src/model/Ptsv2paymentsPaymentInformation.js b/src/model/Ptsv2paymentsPaymentInformation.js index e9f5b85e..ef5051f1 100644 --- a/src/model/Ptsv2paymentsPaymentInformation.js +++ b/src/model/Ptsv2paymentsPaymentInformation.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Ptsv2paymentsPaymentInformationBank', 'model/Ptsv2paymentsPaymentInformationCard', 'model/Ptsv2paymentsPaymentInformationCustomer', 'model/Ptsv2paymentsPaymentInformationFluidData', 'model/Ptsv2paymentsPaymentInformationTokenizedCard'], factory); + define(['ApiClient', 'model/Ptsv2paymentsPaymentInformationBank', 'model/Ptsv2paymentsPaymentInformationCard', 'model/Ptsv2paymentsPaymentInformationCustomer', 'model/Ptsv2paymentsPaymentInformationFluidData', 'model/Ptsv2paymentsPaymentInformationPaymentType', 'model/Ptsv2paymentsPaymentInformationTokenizedCard'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsPaymentInformationBank'), require('./Ptsv2paymentsPaymentInformationCard'), require('./Ptsv2paymentsPaymentInformationCustomer'), require('./Ptsv2paymentsPaymentInformationFluidData'), require('./Ptsv2paymentsPaymentInformationTokenizedCard')); + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsPaymentInformationBank'), require('./Ptsv2paymentsPaymentInformationCard'), require('./Ptsv2paymentsPaymentInformationCustomer'), require('./Ptsv2paymentsPaymentInformationFluidData'), require('./Ptsv2paymentsPaymentInformationPaymentType'), require('./Ptsv2paymentsPaymentInformationTokenizedCard')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.Ptsv2paymentsPaymentInformation = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsPaymentInformationBank, root.CyberSource.Ptsv2paymentsPaymentInformationCard, root.CyberSource.Ptsv2paymentsPaymentInformationCustomer, root.CyberSource.Ptsv2paymentsPaymentInformationFluidData, root.CyberSource.Ptsv2paymentsPaymentInformationTokenizedCard); + root.CyberSource.Ptsv2paymentsPaymentInformation = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsPaymentInformationBank, root.CyberSource.Ptsv2paymentsPaymentInformationCard, root.CyberSource.Ptsv2paymentsPaymentInformationCustomer, root.CyberSource.Ptsv2paymentsPaymentInformationFluidData, root.CyberSource.Ptsv2paymentsPaymentInformationPaymentType, root.CyberSource.Ptsv2paymentsPaymentInformationTokenizedCard); } -}(this, function(ApiClient, Ptsv2paymentsPaymentInformationBank, Ptsv2paymentsPaymentInformationCard, Ptsv2paymentsPaymentInformationCustomer, Ptsv2paymentsPaymentInformationFluidData, Ptsv2paymentsPaymentInformationTokenizedCard) { +}(this, function(ApiClient, Ptsv2paymentsPaymentInformationBank, Ptsv2paymentsPaymentInformationCard, Ptsv2paymentsPaymentInformationCustomer, Ptsv2paymentsPaymentInformationFluidData, Ptsv2paymentsPaymentInformationPaymentType, Ptsv2paymentsPaymentInformationTokenizedCard) { 'use strict'; @@ -52,6 +52,7 @@ + }; /** @@ -80,6 +81,9 @@ if (data.hasOwnProperty('bank')) { obj['bank'] = Ptsv2paymentsPaymentInformationBank.constructFromObject(data['bank']); } + if (data.hasOwnProperty('paymentType')) { + obj['paymentType'] = Ptsv2paymentsPaymentInformationPaymentType.constructFromObject(data['paymentType']); + } } return obj; } @@ -104,6 +108,10 @@ * @member {module:model/Ptsv2paymentsPaymentInformationBank} bank */ exports.prototype['bank'] = undefined; + /** + * @member {module:model/Ptsv2paymentsPaymentInformationPaymentType} paymentType + */ + exports.prototype['paymentType'] = undefined; diff --git a/src/model/Ptsv2paymentsPaymentInformationPaymentType.js b/src/model/Ptsv2paymentsPaymentInformationPaymentType.js new file mode 100644 index 00000000..28376156 --- /dev/null +++ b/src/model/Ptsv2paymentsPaymentInformationPaymentType.js @@ -0,0 +1,99 @@ +/** + * 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', 'model/Ptsv2paymentsPaymentInformationPaymentTypeMethod'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsPaymentInformationPaymentTypeMethod')); + } else { + // Browser globals (root is window) + if (!root.CyberSource) { + root.CyberSource = {}; + } + root.CyberSource.Ptsv2paymentsPaymentInformationPaymentType = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsPaymentInformationPaymentTypeMethod); + } +}(this, function(ApiClient, Ptsv2paymentsPaymentInformationPaymentTypeMethod) { + 'use strict'; + + + + + /** + * The Ptsv2paymentsPaymentInformationPaymentType model module. + * @module model/Ptsv2paymentsPaymentInformationPaymentType + * @version 0.0.1 + */ + + /** + * Constructs a new Ptsv2paymentsPaymentInformationPaymentType. + * @alias module:model/Ptsv2paymentsPaymentInformationPaymentType + * @class + */ + var exports = function() { + var _this = this; + + + + + }; + + /** + * Constructs a Ptsv2paymentsPaymentInformationPaymentType 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/Ptsv2paymentsPaymentInformationPaymentType} obj Optional instance to populate. + * @return {module:model/Ptsv2paymentsPaymentInformationPaymentType} The populated Ptsv2paymentsPaymentInformationPaymentType instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('name')) { + obj['name'] = ApiClient.convertToType(data['name'], 'String'); + } + if (data.hasOwnProperty('subTypeName')) { + obj['subTypeName'] = ApiClient.convertToType(data['subTypeName'], 'String'); + } + if (data.hasOwnProperty('method')) { + obj['method'] = Ptsv2paymentsPaymentInformationPaymentTypeMethod.constructFromObject(data['method']); + } + } + return obj; + } + + /** + * A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit. Possible values: - `CARD` (use this for a PIN debit transaction) + * @member {String} name + */ + exports.prototype['name'] = undefined; + /** + * SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers. - `DEBIT` (use this for a PIN debit transaction) + * @member {String} subTypeName + */ + exports.prototype['subTypeName'] = undefined; + /** + * @member {module:model/Ptsv2paymentsPaymentInformationPaymentTypeMethod} method + */ + exports.prototype['method'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.js b/src/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.js new file mode 100644 index 00000000..93d36e64 --- /dev/null +++ b/src/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.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.Ptsv2paymentsPaymentInformationPaymentTypeMethod = factory(root.CyberSource.ApiClient); + } +}(this, function(ApiClient) { + 'use strict'; + + + + + /** + * The Ptsv2paymentsPaymentInformationPaymentTypeMethod model module. + * @module model/Ptsv2paymentsPaymentInformationPaymentTypeMethod + * @version 0.0.1 + */ + + /** + * Constructs a new Ptsv2paymentsPaymentInformationPaymentTypeMethod. + * @alias module:model/Ptsv2paymentsPaymentInformationPaymentTypeMethod + * @class + */ + var exports = function() { + var _this = this; + + + }; + + /** + * Constructs a Ptsv2paymentsPaymentInformationPaymentTypeMethod 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/Ptsv2paymentsPaymentInformationPaymentTypeMethod} obj Optional instance to populate. + * @return {module:model/Ptsv2paymentsPaymentInformationPaymentTypeMethod} The populated Ptsv2paymentsPaymentInformationPaymentTypeMethod instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('name')) { + obj['name'] = ApiClient.convertToType(data['name'], 'String'); + } + } + return obj; + } + + /** + * A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal + * @member {String} name + */ + exports.prototype['name'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/Ptsv2paymentsProcessingInformation.js b/src/model/Ptsv2paymentsProcessingInformation.js index 400c3fe1..2f2a7b68 100644 --- a/src/model/Ptsv2paymentsProcessingInformation.js +++ b/src/model/Ptsv2paymentsProcessingInformation.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsProcessingInformationBankTransferOptions', 'model/Ptsv2paymentsProcessingInformationCaptureOptions', 'model/Ptsv2paymentsProcessingInformationRecurringOptions'], factory); + define(['ApiClient', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsProcessingInformationBankTransferOptions', 'model/Ptsv2paymentsProcessingInformationCaptureOptions', 'model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer', 'model/Ptsv2paymentsProcessingInformationPurchaseOptions', 'model/Ptsv2paymentsProcessingInformationRecurringOptions'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsProcessingInformationAuthorizationOptions'), require('./Ptsv2paymentsProcessingInformationBankTransferOptions'), require('./Ptsv2paymentsProcessingInformationCaptureOptions'), require('./Ptsv2paymentsProcessingInformationRecurringOptions')); + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsProcessingInformationAuthorizationOptions'), require('./Ptsv2paymentsProcessingInformationBankTransferOptions'), require('./Ptsv2paymentsProcessingInformationCaptureOptions'), require('./Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer'), require('./Ptsv2paymentsProcessingInformationPurchaseOptions'), require('./Ptsv2paymentsProcessingInformationRecurringOptions')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.Ptsv2paymentsProcessingInformation = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsProcessingInformationAuthorizationOptions, root.CyberSource.Ptsv2paymentsProcessingInformationBankTransferOptions, root.CyberSource.Ptsv2paymentsProcessingInformationCaptureOptions, root.CyberSource.Ptsv2paymentsProcessingInformationRecurringOptions); + root.CyberSource.Ptsv2paymentsProcessingInformation = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsProcessingInformationAuthorizationOptions, root.CyberSource.Ptsv2paymentsProcessingInformationBankTransferOptions, root.CyberSource.Ptsv2paymentsProcessingInformationCaptureOptions, root.CyberSource.Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer, root.CyberSource.Ptsv2paymentsProcessingInformationPurchaseOptions, root.CyberSource.Ptsv2paymentsProcessingInformationRecurringOptions); } -}(this, function(ApiClient, Ptsv2paymentsProcessingInformationAuthorizationOptions, Ptsv2paymentsProcessingInformationBankTransferOptions, Ptsv2paymentsProcessingInformationCaptureOptions, Ptsv2paymentsProcessingInformationRecurringOptions) { +}(this, function(ApiClient, Ptsv2paymentsProcessingInformationAuthorizationOptions, Ptsv2paymentsProcessingInformationBankTransferOptions, Ptsv2paymentsProcessingInformationCaptureOptions, Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer, Ptsv2paymentsProcessingInformationPurchaseOptions, Ptsv2paymentsProcessingInformationRecurringOptions) { 'use strict'; @@ -62,6 +62,8 @@ + + }; /** @@ -120,6 +122,12 @@ if (data.hasOwnProperty('bankTransferOptions')) { obj['bankTransferOptions'] = Ptsv2paymentsProcessingInformationBankTransferOptions.constructFromObject(data['bankTransferOptions']); } + if (data.hasOwnProperty('purchaseOptions')) { + obj['purchaseOptions'] = Ptsv2paymentsProcessingInformationPurchaseOptions.constructFromObject(data['purchaseOptions']); + } + if (data.hasOwnProperty('electronicBenefitsTransfer')) { + obj['electronicBenefitsTransfer'] = Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.constructFromObject(data['electronicBenefitsTransfer']); + } } return obj; } @@ -196,6 +204,14 @@ * @member {module:model/Ptsv2paymentsProcessingInformationBankTransferOptions} bankTransferOptions */ exports.prototype['bankTransferOptions'] = undefined; + /** + * @member {module:model/Ptsv2paymentsProcessingInformationPurchaseOptions} purchaseOptions + */ + exports.prototype['purchaseOptions'] = undefined; + /** + * @member {module:model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer} electronicBenefitsTransfer + */ + exports.prototype['electronicBenefitsTransfer'] = undefined; diff --git a/src/model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.js b/src/model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.js new file mode 100644 index 00000000..97fb02ad --- /dev/null +++ b/src/model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.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. 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.Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer = factory(root.CyberSource.ApiClient); + } +}(this, function(ApiClient) { + 'use strict'; + + + + + /** + * The Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer model module. + * @module model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer + * @version 0.0.1 + */ + + /** + * Constructs a new Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer. + * @alias module:model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer + * @class + */ + var exports = function() { + var _this = this; + + + + }; + + /** + * Constructs a Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer 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/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer} obj Optional instance to populate. + * @return {module:model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer} The populated Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('category')) { + obj['category'] = ApiClient.convertToType(data['category'], 'String'); + } + if (data.hasOwnProperty('voucherSerialNumber')) { + obj['voucherSerialNumber'] = ApiClient.convertToType(data['voucherSerialNumber'], 'String'); + } + } + return obj; + } + + /** + * Flag that specifies the category for the EBT transaction. Possible values: - `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. - `FOOD`: Food stamp benefits, which can be used only to purchase food items authorized by the USDA SNAP program. + * @member {String} category + */ + exports.prototype['category'] = undefined; + /** + * The serial number printed on the EBT voucher. + * @member {String} voucherSerialNumber + */ + exports.prototype['voucherSerialNumber'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/Ptsv2paymentsProcessingInformationPurchaseOptions.js b/src/model/Ptsv2paymentsProcessingInformationPurchaseOptions.js new file mode 100644 index 00000000..4fee54b9 --- /dev/null +++ b/src/model/Ptsv2paymentsProcessingInformationPurchaseOptions.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. 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.Ptsv2paymentsProcessingInformationPurchaseOptions = factory(root.CyberSource.ApiClient); + } +}(this, function(ApiClient) { + 'use strict'; + + + + + /** + * The Ptsv2paymentsProcessingInformationPurchaseOptions model module. + * @module model/Ptsv2paymentsProcessingInformationPurchaseOptions + * @version 0.0.1 + */ + + /** + * Constructs a new Ptsv2paymentsProcessingInformationPurchaseOptions. + * @alias module:model/Ptsv2paymentsProcessingInformationPurchaseOptions + * @class + */ + var exports = function() { + var _this = this; + + + + }; + + /** + * Constructs a Ptsv2paymentsProcessingInformationPurchaseOptions 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/Ptsv2paymentsProcessingInformationPurchaseOptions} obj Optional instance to populate. + * @return {module:model/Ptsv2paymentsProcessingInformationPurchaseOptions} The populated Ptsv2paymentsProcessingInformationPurchaseOptions instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('isElectronicBenefitsTransfer')) { + obj['isElectronicBenefitsTransfer'] = ApiClient.convertToType(data['isElectronicBenefitsTransfer'], 'Boolean'); + } + if (data.hasOwnProperty('type')) { + obj['type'] = ApiClient.convertToType(data['type'], 'String'); + } + } + return obj; + } + + /** + * Flag that indicates that this transaction is an EBT transaction.Possible values: - **true** - **false** + * @member {Boolean} isElectronicBenefitsTransfer + */ + exports.prototype['isElectronicBenefitsTransfer'] = undefined; + /** + * This field is used in PIN Debit EBT transaction as a flag to identify EBT vouchers.Possible values: - `EBT_VOUCHER`: Indicates EBT voucher + * @member {String} type + */ + exports.prototype['type'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/Ptsv2paymentsidcapturesOrderInformationAmountDetails.js b/src/model/Ptsv2paymentsidcapturesOrderInformationAmountDetails.js index 4d2a13ea..de2f04f9 100644 --- a/src/model/Ptsv2paymentsidcapturesOrderInformationAmountDetails.js +++ b/src/model/Ptsv2paymentsidcapturesOrderInformationAmountDetails.js @@ -65,6 +65,7 @@ + }; @@ -136,6 +137,9 @@ if (data.hasOwnProperty('originalCurrency')) { obj['originalCurrency'] = ApiClient.convertToType(data['originalCurrency'], 'String'); } + if (data.hasOwnProperty('cashbackAmount')) { + obj['cashbackAmount'] = ApiClient.convertToType(data['cashbackAmount'], 'String'); + } } return obj; } @@ -233,6 +237,11 @@ * @member {String} originalCurrency */ exports.prototype['originalCurrency'] = undefined; + /** + * Cashback amount requested by the customer. If a cashback amount is included in the request, it must be included in the orderInformation.amountDetails.totalAmount value. + * @member {String} cashbackAmount + */ + exports.prototype['cashbackAmount'] = undefined; diff --git a/src/model/Ptsv2paymentsidrefundsPaymentInformation.js b/src/model/Ptsv2paymentsidrefundsPaymentInformation.js index 24224c83..9d0203bc 100644 --- a/src/model/Ptsv2paymentsidrefundsPaymentInformation.js +++ b/src/model/Ptsv2paymentsidrefundsPaymentInformation.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Ptsv2paymentsPaymentInformationBank', 'model/Ptsv2paymentsPaymentInformationCustomer', 'model/Ptsv2paymentsidrefundsPaymentInformationCard'], factory); + define(['ApiClient', 'model/Ptsv2paymentsPaymentInformationBank', 'model/Ptsv2paymentsPaymentInformationCustomer', 'model/Ptsv2paymentsPaymentInformationPaymentType', 'model/Ptsv2paymentsidrefundsPaymentInformationCard'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsPaymentInformationBank'), require('./Ptsv2paymentsPaymentInformationCustomer'), require('./Ptsv2paymentsidrefundsPaymentInformationCard')); + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsPaymentInformationBank'), require('./Ptsv2paymentsPaymentInformationCustomer'), require('./Ptsv2paymentsPaymentInformationPaymentType'), require('./Ptsv2paymentsidrefundsPaymentInformationCard')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.Ptsv2paymentsidrefundsPaymentInformation = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsPaymentInformationBank, root.CyberSource.Ptsv2paymentsPaymentInformationCustomer, root.CyberSource.Ptsv2paymentsidrefundsPaymentInformationCard); + root.CyberSource.Ptsv2paymentsidrefundsPaymentInformation = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsPaymentInformationBank, root.CyberSource.Ptsv2paymentsPaymentInformationCustomer, root.CyberSource.Ptsv2paymentsPaymentInformationPaymentType, root.CyberSource.Ptsv2paymentsidrefundsPaymentInformationCard); } -}(this, function(ApiClient, Ptsv2paymentsPaymentInformationBank, Ptsv2paymentsPaymentInformationCustomer, Ptsv2paymentsidrefundsPaymentInformationCard) { +}(this, function(ApiClient, Ptsv2paymentsPaymentInformationBank, Ptsv2paymentsPaymentInformationCustomer, Ptsv2paymentsPaymentInformationPaymentType, Ptsv2paymentsidrefundsPaymentInformationCard) { 'use strict'; @@ -50,6 +50,7 @@ + }; /** @@ -72,6 +73,9 @@ if (data.hasOwnProperty('customer')) { obj['customer'] = Ptsv2paymentsPaymentInformationCustomer.constructFromObject(data['customer']); } + if (data.hasOwnProperty('paymentType')) { + obj['paymentType'] = Ptsv2paymentsPaymentInformationPaymentType.constructFromObject(data['paymentType']); + } } return obj; } @@ -88,6 +92,10 @@ * @member {module:model/Ptsv2paymentsPaymentInformationCustomer} customer */ exports.prototype['customer'] = undefined; + /** + * @member {module:model/Ptsv2paymentsPaymentInformationPaymentType} paymentType + */ + exports.prototype['paymentType'] = undefined; diff --git a/src/model/Ptsv2paymentsidvoidsPaymentInformation.js b/src/model/Ptsv2paymentsidvoidsPaymentInformation.js new file mode 100644 index 00000000..11e0749e --- /dev/null +++ b/src/model/Ptsv2paymentsidvoidsPaymentInformation.js @@ -0,0 +1,81 @@ +/** + * 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', 'model/Ptsv2paymentsPaymentInformationPaymentType'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsPaymentInformationPaymentType')); + } else { + // Browser globals (root is window) + if (!root.CyberSource) { + root.CyberSource = {}; + } + root.CyberSource.Ptsv2paymentsidvoidsPaymentInformation = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsPaymentInformationPaymentType); + } +}(this, function(ApiClient, Ptsv2paymentsPaymentInformationPaymentType) { + 'use strict'; + + + + + /** + * The Ptsv2paymentsidvoidsPaymentInformation model module. + * @module model/Ptsv2paymentsidvoidsPaymentInformation + * @version 0.0.1 + */ + + /** + * Constructs a new Ptsv2paymentsidvoidsPaymentInformation. + * @alias module:model/Ptsv2paymentsidvoidsPaymentInformation + * @class + */ + var exports = function() { + var _this = this; + + + }; + + /** + * Constructs a Ptsv2paymentsidvoidsPaymentInformation 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/Ptsv2paymentsidvoidsPaymentInformation} obj Optional instance to populate. + * @return {module:model/Ptsv2paymentsidvoidsPaymentInformation} The populated Ptsv2paymentsidvoidsPaymentInformation instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('paymentType')) { + obj['paymentType'] = Ptsv2paymentsPaymentInformationPaymentType.constructFromObject(data['paymentType']); + } + } + return obj; + } + + /** + * @member {module:model/Ptsv2paymentsPaymentInformationPaymentType} paymentType + */ + exports.prototype['paymentType'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType.js b/src/model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType.js index fc138785..56938108 100644 --- a/src/model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType.js +++ b/src/model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType.js @@ -85,12 +85,12 @@ } /** - * 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. + * A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit. Possible values: - `CARD` (use this for a PIN debit transaction) * @member {String} name */ exports.prototype['name'] = undefined; /** - * SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers. + * SubType Name is detail information about Payment Type. Examples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers. - `DEBIT` (use this for a PIN debit transaction) * @member {String} subTypeName */ exports.prototype['subTypeName'] = undefined; diff --git a/src/model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType.js b/src/model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType.js index 4ac77488..5677668e 100644 --- a/src/model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType.js +++ b/src/model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType.js @@ -73,7 +73,7 @@ } /** - * 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. + * A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit. Possible values: - `CARD` (use this for a PIN debit transaction) * @member {String} name */ exports.prototype['name'] = undefined; diff --git a/src/model/VoidCaptureRequest.js b/src/model/VoidCaptureRequest.js index aab54294..e7dc45ff 100644 --- a/src/model/VoidCaptureRequest.js +++ b/src/model/VoidCaptureRequest.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Ptsv2paymentsidreversalsClientReferenceInformation'], factory); + define(['ApiClient', 'model/Ptsv2paymentsidreversalsClientReferenceInformation', 'model/Ptsv2paymentsidvoidsPaymentInformation'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsidreversalsClientReferenceInformation')); + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsidreversalsClientReferenceInformation'), require('./Ptsv2paymentsidvoidsPaymentInformation')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.VoidCaptureRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsidreversalsClientReferenceInformation); + root.CyberSource.VoidCaptureRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsidreversalsClientReferenceInformation, root.CyberSource.Ptsv2paymentsidvoidsPaymentInformation); } -}(this, function(ApiClient, Ptsv2paymentsidreversalsClientReferenceInformation) { +}(this, function(ApiClient, Ptsv2paymentsidreversalsClientReferenceInformation, Ptsv2paymentsidvoidsPaymentInformation) { 'use strict'; @@ -48,6 +48,7 @@ var _this = this; + }; /** @@ -64,6 +65,9 @@ if (data.hasOwnProperty('clientReferenceInformation')) { obj['clientReferenceInformation'] = Ptsv2paymentsidreversalsClientReferenceInformation.constructFromObject(data['clientReferenceInformation']); } + if (data.hasOwnProperty('paymentInformation')) { + obj['paymentInformation'] = Ptsv2paymentsidvoidsPaymentInformation.constructFromObject(data['paymentInformation']); + } } return obj; } @@ -72,6 +76,10 @@ * @member {module:model/Ptsv2paymentsidreversalsClientReferenceInformation} clientReferenceInformation */ exports.prototype['clientReferenceInformation'] = undefined; + /** + * @member {module:model/Ptsv2paymentsidvoidsPaymentInformation} paymentInformation + */ + exports.prototype['paymentInformation'] = undefined; diff --git a/src/model/VoidCreditRequest.js b/src/model/VoidCreditRequest.js index 68bcf988..6e908538 100644 --- a/src/model/VoidCreditRequest.js +++ b/src/model/VoidCreditRequest.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Ptsv2paymentsidreversalsClientReferenceInformation'], factory); + define(['ApiClient', 'model/Ptsv2paymentsidreversalsClientReferenceInformation', 'model/Ptsv2paymentsidvoidsPaymentInformation'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsidreversalsClientReferenceInformation')); + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsidreversalsClientReferenceInformation'), require('./Ptsv2paymentsidvoidsPaymentInformation')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.VoidCreditRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsidreversalsClientReferenceInformation); + root.CyberSource.VoidCreditRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsidreversalsClientReferenceInformation, root.CyberSource.Ptsv2paymentsidvoidsPaymentInformation); } -}(this, function(ApiClient, Ptsv2paymentsidreversalsClientReferenceInformation) { +}(this, function(ApiClient, Ptsv2paymentsidreversalsClientReferenceInformation, Ptsv2paymentsidvoidsPaymentInformation) { 'use strict'; @@ -48,6 +48,7 @@ var _this = this; + }; /** @@ -64,6 +65,9 @@ if (data.hasOwnProperty('clientReferenceInformation')) { obj['clientReferenceInformation'] = Ptsv2paymentsidreversalsClientReferenceInformation.constructFromObject(data['clientReferenceInformation']); } + if (data.hasOwnProperty('paymentInformation')) { + obj['paymentInformation'] = Ptsv2paymentsidvoidsPaymentInformation.constructFromObject(data['paymentInformation']); + } } return obj; } @@ -72,6 +76,10 @@ * @member {module:model/Ptsv2paymentsidreversalsClientReferenceInformation} clientReferenceInformation */ exports.prototype['clientReferenceInformation'] = undefined; + /** + * @member {module:model/Ptsv2paymentsidvoidsPaymentInformation} paymentInformation + */ + exports.prototype['paymentInformation'] = undefined; diff --git a/src/model/VoidPaymentRequest.js b/src/model/VoidPaymentRequest.js index 0af580dc..c180f977 100644 --- a/src/model/VoidPaymentRequest.js +++ b/src/model/VoidPaymentRequest.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Ptsv2paymentsidreversalsClientReferenceInformation'], factory); + define(['ApiClient', 'model/Ptsv2paymentsidreversalsClientReferenceInformation', 'model/Ptsv2paymentsidvoidsPaymentInformation'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsidreversalsClientReferenceInformation')); + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsidreversalsClientReferenceInformation'), require('./Ptsv2paymentsidvoidsPaymentInformation')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.VoidPaymentRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsidreversalsClientReferenceInformation); + root.CyberSource.VoidPaymentRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsidreversalsClientReferenceInformation, root.CyberSource.Ptsv2paymentsidvoidsPaymentInformation); } -}(this, function(ApiClient, Ptsv2paymentsidreversalsClientReferenceInformation) { +}(this, function(ApiClient, Ptsv2paymentsidreversalsClientReferenceInformation, Ptsv2paymentsidvoidsPaymentInformation) { 'use strict'; @@ -48,6 +48,7 @@ var _this = this; + }; /** @@ -64,6 +65,9 @@ if (data.hasOwnProperty('clientReferenceInformation')) { obj['clientReferenceInformation'] = Ptsv2paymentsidreversalsClientReferenceInformation.constructFromObject(data['clientReferenceInformation']); } + if (data.hasOwnProperty('paymentInformation')) { + obj['paymentInformation'] = Ptsv2paymentsidvoidsPaymentInformation.constructFromObject(data['paymentInformation']); + } } return obj; } @@ -72,6 +76,10 @@ * @member {module:model/Ptsv2paymentsidreversalsClientReferenceInformation} clientReferenceInformation */ exports.prototype['clientReferenceInformation'] = undefined; + /** + * @member {module:model/Ptsv2paymentsidvoidsPaymentInformation} paymentInformation + */ + exports.prototype['paymentInformation'] = undefined; diff --git a/src/model/VoidRefundRequest.js b/src/model/VoidRefundRequest.js index 1513ac54..0b37a43c 100644 --- a/src/model/VoidRefundRequest.js +++ b/src/model/VoidRefundRequest.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Ptsv2paymentsidreversalsClientReferenceInformation'], factory); + define(['ApiClient', 'model/Ptsv2paymentsidreversalsClientReferenceInformation', 'model/Ptsv2paymentsidvoidsPaymentInformation'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsidreversalsClientReferenceInformation')); + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsidreversalsClientReferenceInformation'), require('./Ptsv2paymentsidvoidsPaymentInformation')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.VoidRefundRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsidreversalsClientReferenceInformation); + root.CyberSource.VoidRefundRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsidreversalsClientReferenceInformation, root.CyberSource.Ptsv2paymentsidvoidsPaymentInformation); } -}(this, function(ApiClient, Ptsv2paymentsidreversalsClientReferenceInformation) { +}(this, function(ApiClient, Ptsv2paymentsidreversalsClientReferenceInformation, Ptsv2paymentsidvoidsPaymentInformation) { 'use strict'; @@ -48,6 +48,7 @@ var _this = this; + }; /** @@ -64,6 +65,9 @@ if (data.hasOwnProperty('clientReferenceInformation')) { obj['clientReferenceInformation'] = Ptsv2paymentsidreversalsClientReferenceInformation.constructFromObject(data['clientReferenceInformation']); } + if (data.hasOwnProperty('paymentInformation')) { + obj['paymentInformation'] = Ptsv2paymentsidvoidsPaymentInformation.constructFromObject(data['paymentInformation']); + } } return obj; } @@ -72,6 +76,10 @@ * @member {module:model/Ptsv2paymentsidreversalsClientReferenceInformation} clientReferenceInformation */ exports.prototype['clientReferenceInformation'] = undefined; + /** + * @member {module:model/Ptsv2paymentsidvoidsPaymentInformation} paymentInformation + */ + exports.prototype['paymentInformation'] = undefined; diff --git a/test/model/RequestBody.spec.js b/test/model/CreateAdhocReportRequest.spec.js similarity index 77% rename from test/model/RequestBody.spec.js rename to test/model/CreateAdhocReportRequest.spec.js index c79b64e2..392875c6 100644 --- a/test/model/RequestBody.spec.js +++ b/test/model/CreateAdhocReportRequest.spec.js @@ -30,7 +30,7 @@ var instance; beforeEach(function() { - instance = new CyberSource.RequestBody(); + instance = new CyberSource.CreateAdhocReportRequest(); }); var getProperty = function(object, getter, property) { @@ -49,76 +49,76 @@ object[property] = value; } - describe('RequestBody', function() { - it('should create an instance of RequestBody', function() { - // uncomment below and update the code to test RequestBody - //var instane = new CyberSource.RequestBody(); - //expect(instance).to.be.a(CyberSource.RequestBody); + describe('CreateAdhocReportRequest', function() { + it('should create an instance of CreateAdhocReportRequest', function() { + // uncomment below and update the code to test CreateAdhocReportRequest + //var instane = new CyberSource.CreateAdhocReportRequest(); + //expect(instance).to.be.a(CyberSource.CreateAdhocReportRequest); }); it('should have the property organizationId (base name: "organizationId")', function() { // uncomment below and update the code to test the property organizationId - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property reportDefinitionName (base name: "reportDefinitionName")', function() { // uncomment below and update the code to test the property reportDefinitionName - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property reportFields (base name: "reportFields")', function() { // uncomment below and update the code to test the property reportFields - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property reportMimeType (base name: "reportMimeType")', function() { // uncomment below and update the code to test the property reportMimeType - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property reportName (base name: "reportName")', function() { // uncomment below and update the code to test the property reportName - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property timezone (base name: "timezone")', function() { // uncomment below and update the code to test the property timezone - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property reportStartTime (base name: "reportStartTime")', function() { // uncomment below and update the code to test the property reportStartTime - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property reportEndTime (base name: "reportEndTime")', function() { // uncomment below and update the code to test the property reportEndTime - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property reportFilters (base name: "reportFilters")', function() { // uncomment below and update the code to test the property reportFilters - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property reportPreferences (base name: "reportPreferences")', function() { // uncomment below and update the code to test the property reportPreferences - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); it('should have the property groupName (base name: "groupName")', function() { // uncomment below and update the code to test the property groupName - //var instane = new CyberSource.RequestBody(); + //var instane = new CyberSource.CreateAdhocReportRequest(); //expect(instance).to.be(); }); diff --git a/test/model/RequestBody1.spec.js b/test/model/CreateReportSubscriptionRequest.spec.js similarity index 75% rename from test/model/RequestBody1.spec.js rename to test/model/CreateReportSubscriptionRequest.spec.js index 1bb50636..087e1809 100644 --- a/test/model/RequestBody1.spec.js +++ b/test/model/CreateReportSubscriptionRequest.spec.js @@ -30,7 +30,7 @@ var instance; beforeEach(function() { - instance = new CyberSource.RequestBody1(); + instance = new CyberSource.CreateReportSubscriptionRequest(); }); var getProperty = function(object, getter, property) { @@ -49,82 +49,82 @@ object[property] = value; } - describe('RequestBody1', function() { - it('should create an instance of RequestBody1', function() { - // uncomment below and update the code to test RequestBody1 - //var instane = new CyberSource.RequestBody1(); - //expect(instance).to.be.a(CyberSource.RequestBody1); + describe('CreateReportSubscriptionRequest', function() { + it('should create an instance of CreateReportSubscriptionRequest', function() { + // uncomment below and update the code to test CreateReportSubscriptionRequest + //var instane = new CyberSource.CreateReportSubscriptionRequest(); + //expect(instance).to.be.a(CyberSource.CreateReportSubscriptionRequest); }); it('should have the property organizationId (base name: "organizationId")', function() { // uncomment below and update the code to test the property organizationId - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property reportDefinitionName (base name: "reportDefinitionName")', function() { // uncomment below and update the code to test the property reportDefinitionName - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property reportFields (base name: "reportFields")', function() { // uncomment below and update the code to test the property reportFields - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property reportMimeType (base name: "reportMimeType")', function() { // uncomment below and update the code to test the property reportMimeType - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property reportFrequency (base name: "reportFrequency")', function() { // uncomment below and update the code to test the property reportFrequency - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property reportName (base name: "reportName")', function() { // uncomment below and update the code to test the property reportName - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property timezone (base name: "timezone")', function() { // uncomment below and update the code to test the property timezone - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property startTime (base name: "startTime")', function() { // uncomment below and update the code to test the property startTime - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property startDay (base name: "startDay")', function() { // uncomment below and update the code to test the property startDay - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property reportFilters (base name: "reportFilters")', function() { // uncomment below and update the code to test the property reportFilters - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property reportPreferences (base name: "reportPreferences")', function() { // uncomment below and update the code to test the property reportPreferences - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); it('should have the property groupName (base name: "groupName")', function() { // uncomment below and update the code to test the property groupName - //var instane = new CyberSource.RequestBody1(); + //var instane = new CyberSource.CreateReportSubscriptionRequest(); //expect(instance).to.be(); }); diff --git a/test/model/Error.spec.js b/test/model/Error.spec.js index 22cea5b5..a21093b0 100644 --- a/test/model/Error.spec.js +++ b/test/model/Error.spec.js @@ -56,14 +56,20 @@ //expect(instance).to.be.a(CyberSource.Error); }); - it('should have the property responseStatus (base name: "responseStatus")', function() { - // uncomment below and update the code to test the property responseStatus + it('should have the property type (base name: "type")', function() { + // uncomment below and update the code to test the property type //var instane = new CyberSource.Error(); //expect(instance).to.be(); }); - it('should have the property links (base name: "_links")', function() { - // uncomment below and update the code to test the property links + 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.Error(); + //expect(instance).to.be(); + }); + + it('should have the property details (base name: "details")', function() { + // uncomment below and update the code to test the property details //var instane = new CyberSource.Error(); //expect(instance).to.be(); }); diff --git a/test/model/ErrorLinks.spec.js b/test/model/ErrorLinks.spec.js index 2c1b08d8..f03b6cc1 100644 --- a/test/model/ErrorLinks.spec.js +++ b/test/model/ErrorLinks.spec.js @@ -56,8 +56,8 @@ //expect(instance).to.be.a(CyberSource.ErrorLinks); }); - it('should have the property self (base name: "self")', function() { - // uncomment below and update the code to test the property self + it('should have the property next (base name: "next")', function() { + // uncomment below and update the code to test the property next //var instane = new CyberSource.ErrorLinks(); //expect(instance).to.be(); }); @@ -68,8 +68,8 @@ //expect(instance).to.be(); }); - it('should have the property next (base name: "next")', function() { - // uncomment below and update the code to test the property next + it('should have the property self (base name: "self")', function() { + // uncomment below and update the code to test the property self //var instane = new CyberSource.ErrorLinks(); //expect(instance).to.be(); }); diff --git a/test/model/ErrorResponse.spec.js b/test/model/ErrorResponse.spec.js index 5317fb3a..3ba1241d 100644 --- a/test/model/ErrorResponse.spec.js +++ b/test/model/ErrorResponse.spec.js @@ -56,18 +56,6 @@ //expect(instance).to.be.a(CyberSource.ErrorResponse); }); - it('should have the property responseStatus (base name: "responseStatus")', function() { - // uncomment below and update the code to test the property responseStatus - //var instane = new CyberSource.ErrorResponse(); - //expect(instance).to.be(); - }); - - it('should have the property links (base name: "_links")', function() { - // uncomment below and update the code to test the property links - //var instane = new CyberSource.ErrorResponse(); - //expect(instance).to.be(); - }); - }); })); diff --git a/test/model/InlineResponse400.spec.js b/test/model/InlineResponse400.spec.js index 1ddc3893..f201ef58 100644 --- a/test/model/InlineResponse400.spec.js +++ b/test/model/InlineResponse400.spec.js @@ -56,8 +56,8 @@ //expect(instance).to.be.a(CyberSource.InlineResponse400); }); - it('should have the property type (base name: "type")', function() { - // uncomment below and update the code to test the property type + it('should have the property code (base name: "code")', function() { + // uncomment below and update the code to test the property code //var instane = new CyberSource.InlineResponse400(); //expect(instance).to.be(); }); @@ -68,8 +68,26 @@ //expect(instance).to.be(); }); - it('should have the property details (base name: "details")', function() { - // uncomment below and update the code to test the property details + it('should have the property localizationKey (base name: "localizationKey")', function() { + // uncomment below and update the code to test the property localizationKey + //var instane = new CyberSource.InlineResponse400(); + //expect(instance).to.be(); + }); + + it('should have the property correlationId (base name: "correlationId")', function() { + // uncomment below and update the code to test the property correlationId + //var instane = new CyberSource.InlineResponse400(); + //expect(instance).to.be(); + }); + + it('should have the property detail (base name: "detail")', function() { + // uncomment below and update the code to test the property detail + //var instane = new CyberSource.InlineResponse400(); + //expect(instance).to.be(); + }); + + it('should have the property fields (base name: "fields")', function() { + // uncomment below and update the code to test the property fields //var instane = new CyberSource.InlineResponse400(); //expect(instance).to.be(); }); diff --git a/test/model/InlineResponse4001.spec.js b/test/model/InlineResponse4001.spec.js index 0d451d9e..ae707a97 100644 --- a/test/model/InlineResponse4001.spec.js +++ b/test/model/InlineResponse4001.spec.js @@ -56,8 +56,8 @@ //expect(instance).to.be.a(CyberSource.InlineResponse4001); }); - it('should have the property code (base name: "code")', function() { - // uncomment below and update the code to test the property code + it('should have the property type (base name: "type")', function() { + // uncomment below and update the code to test the property type //var instane = new CyberSource.InlineResponse4001(); //expect(instance).to.be(); }); @@ -68,26 +68,8 @@ //expect(instance).to.be(); }); - it('should have the property localizationKey (base name: "localizationKey")', function() { - // uncomment below and update the code to test the property localizationKey - //var instane = new CyberSource.InlineResponse4001(); - //expect(instance).to.be(); - }); - - it('should have the property correlationId (base name: "correlationId")', function() { - // uncomment below and update the code to test the property correlationId - //var instane = new CyberSource.InlineResponse4001(); - //expect(instance).to.be(); - }); - - it('should have the property detail (base name: "detail")', function() { - // uncomment below and update the code to test the property detail - //var instane = new CyberSource.InlineResponse4001(); - //expect(instance).to.be(); - }); - - it('should have the property fields (base name: "fields")', function() { - // uncomment below and update the code to test the property fields + it('should have the property details (base name: "details")', function() { + // uncomment below and update the code to test the property details //var instane = new CyberSource.InlineResponse4001(); //expect(instance).to.be(); }); diff --git a/test/model/InlineResponse4001Fields.spec.js b/test/model/InlineResponse400Fields.spec.js similarity index 80% rename from test/model/InlineResponse4001Fields.spec.js rename to test/model/InlineResponse400Fields.spec.js index 024b637d..c41e996d 100644 --- a/test/model/InlineResponse4001Fields.spec.js +++ b/test/model/InlineResponse400Fields.spec.js @@ -30,7 +30,7 @@ var instance; beforeEach(function() { - instance = new CyberSource.InlineResponse4001Fields(); + instance = new CyberSource.InlineResponse400Fields(); }); var getProperty = function(object, getter, property) { @@ -49,28 +49,28 @@ object[property] = value; } - describe('InlineResponse4001Fields', function() { - it('should create an instance of InlineResponse4001Fields', function() { - // uncomment below and update the code to test InlineResponse4001Fields - //var instane = new CyberSource.InlineResponse4001Fields(); - //expect(instance).to.be.a(CyberSource.InlineResponse4001Fields); + describe('InlineResponse400Fields', function() { + it('should create an instance of InlineResponse400Fields', function() { + // uncomment below and update the code to test InlineResponse400Fields + //var instane = new CyberSource.InlineResponse400Fields(); + //expect(instance).to.be.a(CyberSource.InlineResponse400Fields); }); it('should have the property path (base name: "path")', function() { // uncomment below and update the code to test the property path - //var instane = new CyberSource.InlineResponse4001Fields(); + //var instane = new CyberSource.InlineResponse400Fields(); //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.InlineResponse4001Fields(); + //var instane = new CyberSource.InlineResponse400Fields(); //expect(instance).to.be(); }); it('should have the property localizationKey (base name: "localizationKey")', function() { // uncomment below and update the code to test the property localizationKey - //var instane = new CyberSource.InlineResponse4001Fields(); + //var instane = new CyberSource.InlineResponse400Fields(); //expect(instance).to.be(); }); diff --git a/test/model/Link.spec.js b/test/model/Link.spec.js index 0b06d6b2..939926fa 100644 --- a/test/model/Link.spec.js +++ b/test/model/Link.spec.js @@ -62,18 +62,6 @@ //expect(instance).to.be(); }); - it('should have the property title (base name: "title")', function() { - // uncomment below and update the code to test the property title - //var instane = new CyberSource.Link(); - //expect(instance).to.be(); - }); - - it('should have the property method (base name: "method")', function() { - // uncomment below and update the code to test the property method - //var instane = new CyberSource.Link(); - //expect(instance).to.be(); - }); - }); })); diff --git a/test/model/Links.spec.js b/test/model/Links.spec.js index 0eed2e32..500ac4d9 100644 --- a/test/model/Links.spec.js +++ b/test/model/Links.spec.js @@ -62,14 +62,14 @@ //expect(instance).to.be(); }); - it('should have the property documentation (base name: "documentation")', function() { - // uncomment below and update the code to test the property documentation + it('should have the property ancestor (base name: "ancestor")', function() { + // uncomment below and update the code to test the property ancestor //var instane = new CyberSource.Links(); //expect(instance).to.be(); }); - it('should have the property next (base name: "next")', function() { - // uncomment below and update the code to test the property next + it('should have the property successor (base name: "successor")', function() { + // uncomment below and update the code to test the property successor //var instane = new CyberSource.Links(); //expect(instance).to.be(); }); diff --git a/test/model/Ptsv2creditsProcessingInformation.spec.js b/test/model/Ptsv2creditsProcessingInformation.spec.js index 8ac68e83..223edea7 100644 --- a/test/model/Ptsv2creditsProcessingInformation.spec.js +++ b/test/model/Ptsv2creditsProcessingInformation.spec.js @@ -122,6 +122,18 @@ //expect(instance).to.be(); }); + it('should have the property purchaseOptions (base name: "purchaseOptions")', function() { + // uncomment below and update the code to test the property purchaseOptions + //var instane = new CyberSource.Ptsv2creditsProcessingInformation(); + //expect(instance).to.be(); + }); + + it('should have the property electronicBenefitsTransfer (base name: "electronicBenefitsTransfer")', function() { + // uncomment below and update the code to test the property electronicBenefitsTransfer + //var instane = new CyberSource.Ptsv2creditsProcessingInformation(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.spec.js b/test/model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.spec.js new file mode 100644 index 00000000..6eb0c24e --- /dev/null +++ b/test/model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer.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.Ptsv2creditsProcessingInformationElectronicBenefitsTransfer(); + }); + + 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('Ptsv2creditsProcessingInformationElectronicBenefitsTransfer', function() { + it('should create an instance of Ptsv2creditsProcessingInformationElectronicBenefitsTransfer', function() { + // uncomment below and update the code to test Ptsv2creditsProcessingInformationElectronicBenefitsTransfer + //var instane = new CyberSource.Ptsv2creditsProcessingInformationElectronicBenefitsTransfer(); + //expect(instance).to.be.a(CyberSource.Ptsv2creditsProcessingInformationElectronicBenefitsTransfer); + }); + + it('should have the property category (base name: "category")', function() { + // uncomment below and update the code to test the property category + //var instane = new CyberSource.Ptsv2creditsProcessingInformationElectronicBenefitsTransfer(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/Ptsv2creditsProcessingInformationPurchaseOptions.spec.js b/test/model/Ptsv2creditsProcessingInformationPurchaseOptions.spec.js new file mode 100644 index 00000000..e782e26c --- /dev/null +++ b/test/model/Ptsv2creditsProcessingInformationPurchaseOptions.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.Ptsv2creditsProcessingInformationPurchaseOptions(); + }); + + 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('Ptsv2creditsProcessingInformationPurchaseOptions', function() { + it('should create an instance of Ptsv2creditsProcessingInformationPurchaseOptions', function() { + // uncomment below and update the code to test Ptsv2creditsProcessingInformationPurchaseOptions + //var instane = new CyberSource.Ptsv2creditsProcessingInformationPurchaseOptions(); + //expect(instance).to.be.a(CyberSource.Ptsv2creditsProcessingInformationPurchaseOptions); + }); + + it('should have the property isElectronicBenefitsTransfer (base name: "isElectronicBenefitsTransfer")', function() { + // uncomment below and update the code to test the property isElectronicBenefitsTransfer + //var instane = new CyberSource.Ptsv2creditsProcessingInformationPurchaseOptions(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/Ptsv2paymentsOrderInformationAmountDetails.spec.js b/test/model/Ptsv2paymentsOrderInformationAmountDetails.spec.js index 33471952..ca3a7fbe 100644 --- a/test/model/Ptsv2paymentsOrderInformationAmountDetails.spec.js +++ b/test/model/Ptsv2paymentsOrderInformationAmountDetails.spec.js @@ -194,6 +194,12 @@ //expect(instance).to.be(); }); + it('should have the property cashbackAmount (base name: "cashbackAmount")', function() { + // uncomment below and update the code to test the property cashbackAmount + //var instane = new CyberSource.Ptsv2paymentsOrderInformationAmountDetails(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/Ptsv2paymentsPaymentInformation.spec.js b/test/model/Ptsv2paymentsPaymentInformation.spec.js index df483c2b..3bca3ef2 100644 --- a/test/model/Ptsv2paymentsPaymentInformation.spec.js +++ b/test/model/Ptsv2paymentsPaymentInformation.spec.js @@ -86,6 +86,12 @@ //expect(instance).to.be(); }); + it('should have the property paymentType (base name: "paymentType")', function() { + // uncomment below and update the code to test the property paymentType + //var instane = new CyberSource.Ptsv2paymentsPaymentInformation(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/Ptsv2paymentsPaymentInformationPaymentType.spec.js b/test/model/Ptsv2paymentsPaymentInformationPaymentType.spec.js new file mode 100644 index 00000000..6964bf39 --- /dev/null +++ b/test/model/Ptsv2paymentsPaymentInformationPaymentType.spec.js @@ -0,0 +1,79 @@ +/** + * 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.Ptsv2paymentsPaymentInformationPaymentType(); + }); + + 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('Ptsv2paymentsPaymentInformationPaymentType', function() { + it('should create an instance of Ptsv2paymentsPaymentInformationPaymentType', function() { + // uncomment below and update the code to test Ptsv2paymentsPaymentInformationPaymentType + //var instane = new CyberSource.Ptsv2paymentsPaymentInformationPaymentType(); + //expect(instance).to.be.a(CyberSource.Ptsv2paymentsPaymentInformationPaymentType); + }); + + it('should have the property name (base name: "name")', function() { + // uncomment below and update the code to test the property name + //var instane = new CyberSource.Ptsv2paymentsPaymentInformationPaymentType(); + //expect(instance).to.be(); + }); + + it('should have the property subTypeName (base name: "subTypeName")', function() { + // uncomment below and update the code to test the property subTypeName + //var instane = new CyberSource.Ptsv2paymentsPaymentInformationPaymentType(); + //expect(instance).to.be(); + }); + + it('should have the property method (base name: "method")', function() { + // uncomment below and update the code to test the property method + //var instane = new CyberSource.Ptsv2paymentsPaymentInformationPaymentType(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.spec.js b/test/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.spec.js new file mode 100644 index 00000000..89d5b4ff --- /dev/null +++ b/test/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.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.Ptsv2paymentsPaymentInformationPaymentTypeMethod(); + }); + + 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('Ptsv2paymentsPaymentInformationPaymentTypeMethod', function() { + it('should create an instance of Ptsv2paymentsPaymentInformationPaymentTypeMethod', function() { + // uncomment below and update the code to test Ptsv2paymentsPaymentInformationPaymentTypeMethod + //var instane = new CyberSource.Ptsv2paymentsPaymentInformationPaymentTypeMethod(); + //expect(instance).to.be.a(CyberSource.Ptsv2paymentsPaymentInformationPaymentTypeMethod); + }); + + it('should have the property name (base name: "name")', function() { + // uncomment below and update the code to test the property name + //var instane = new CyberSource.Ptsv2paymentsPaymentInformationPaymentTypeMethod(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/Ptsv2paymentsProcessingInformation.spec.js b/test/model/Ptsv2paymentsProcessingInformation.spec.js index 02505a50..d9d6d25d 100644 --- a/test/model/Ptsv2paymentsProcessingInformation.spec.js +++ b/test/model/Ptsv2paymentsProcessingInformation.spec.js @@ -146,6 +146,18 @@ //expect(instance).to.be(); }); + it('should have the property purchaseOptions (base name: "purchaseOptions")', function() { + // uncomment below and update the code to test the property purchaseOptions + //var instane = new CyberSource.Ptsv2paymentsProcessingInformation(); + //expect(instance).to.be(); + }); + + it('should have the property electronicBenefitsTransfer (base name: "electronicBenefitsTransfer")', function() { + // uncomment below and update the code to test the property electronicBenefitsTransfer + //var instane = new CyberSource.Ptsv2paymentsProcessingInformation(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.spec.js b/test/model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.spec.js new file mode 100644 index 00000000..b4e996da --- /dev/null +++ b/test/model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer.spec.js @@ -0,0 +1,73 @@ +/** + * 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.Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer(); + }); + + 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('Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer', function() { + it('should create an instance of Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer', function() { + // uncomment below and update the code to test Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer(); + //expect(instance).to.be.a(CyberSource.Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer); + }); + + it('should have the property category (base name: "category")', function() { + // uncomment below and update the code to test the property category + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer(); + //expect(instance).to.be(); + }); + + it('should have the property voucherSerialNumber (base name: "voucherSerialNumber")', function() { + // uncomment below and update the code to test the property voucherSerialNumber + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/Ptsv2paymentsProcessingInformationPurchaseOptions.spec.js b/test/model/Ptsv2paymentsProcessingInformationPurchaseOptions.spec.js new file mode 100644 index 00000000..ab008351 --- /dev/null +++ b/test/model/Ptsv2paymentsProcessingInformationPurchaseOptions.spec.js @@ -0,0 +1,73 @@ +/** + * 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.Ptsv2paymentsProcessingInformationPurchaseOptions(); + }); + + 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('Ptsv2paymentsProcessingInformationPurchaseOptions', function() { + it('should create an instance of Ptsv2paymentsProcessingInformationPurchaseOptions', function() { + // uncomment below and update the code to test Ptsv2paymentsProcessingInformationPurchaseOptions + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationPurchaseOptions(); + //expect(instance).to.be.a(CyberSource.Ptsv2paymentsProcessingInformationPurchaseOptions); + }); + + it('should have the property isElectronicBenefitsTransfer (base name: "isElectronicBenefitsTransfer")', function() { + // uncomment below and update the code to test the property isElectronicBenefitsTransfer + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationPurchaseOptions(); + //expect(instance).to.be(); + }); + + it('should have the property type (base name: "type")', function() { + // uncomment below and update the code to test the property type + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationPurchaseOptions(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/Ptsv2paymentsidcapturesOrderInformationAmountDetails.spec.js b/test/model/Ptsv2paymentsidcapturesOrderInformationAmountDetails.spec.js index ed2d54ff..d1cfdfd5 100644 --- a/test/model/Ptsv2paymentsidcapturesOrderInformationAmountDetails.spec.js +++ b/test/model/Ptsv2paymentsidcapturesOrderInformationAmountDetails.spec.js @@ -170,6 +170,12 @@ //expect(instance).to.be(); }); + it('should have the property cashbackAmount (base name: "cashbackAmount")', function() { + // uncomment below and update the code to test the property cashbackAmount + //var instane = new CyberSource.Ptsv2paymentsidcapturesOrderInformationAmountDetails(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/Ptsv2paymentsidrefundsPaymentInformation.spec.js b/test/model/Ptsv2paymentsidrefundsPaymentInformation.spec.js index d46da667..ddd23fd1 100644 --- a/test/model/Ptsv2paymentsidrefundsPaymentInformation.spec.js +++ b/test/model/Ptsv2paymentsidrefundsPaymentInformation.spec.js @@ -74,6 +74,12 @@ //expect(instance).to.be(); }); + it('should have the property paymentType (base name: "paymentType")', function() { + // uncomment below and update the code to test the property paymentType + //var instane = new CyberSource.Ptsv2paymentsidrefundsPaymentInformation(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/Ptsv2paymentsidvoidsPaymentInformation.spec.js b/test/model/Ptsv2paymentsidvoidsPaymentInformation.spec.js new file mode 100644 index 00000000..c98ba1c2 --- /dev/null +++ b/test/model/Ptsv2paymentsidvoidsPaymentInformation.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.Ptsv2paymentsidvoidsPaymentInformation(); + }); + + 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('Ptsv2paymentsidvoidsPaymentInformation', function() { + it('should create an instance of Ptsv2paymentsidvoidsPaymentInformation', function() { + // uncomment below and update the code to test Ptsv2paymentsidvoidsPaymentInformation + //var instane = new CyberSource.Ptsv2paymentsidvoidsPaymentInformation(); + //expect(instance).to.be.a(CyberSource.Ptsv2paymentsidvoidsPaymentInformation); + }); + + it('should have the property paymentType (base name: "paymentType")', function() { + // uncomment below and update the code to test the property paymentType + //var instane = new CyberSource.Ptsv2paymentsidvoidsPaymentInformation(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/VoidCaptureRequest.spec.js b/test/model/VoidCaptureRequest.spec.js index 470fdc80..2893c2b2 100644 --- a/test/model/VoidCaptureRequest.spec.js +++ b/test/model/VoidCaptureRequest.spec.js @@ -62,6 +62,12 @@ //expect(instance).to.be(); }); + it('should have the property paymentInformation (base name: "paymentInformation")', function() { + // uncomment below and update the code to test the property paymentInformation + //var instane = new CyberSource.VoidCaptureRequest(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/VoidCreditRequest.spec.js b/test/model/VoidCreditRequest.spec.js index fbb04413..09121a6a 100644 --- a/test/model/VoidCreditRequest.spec.js +++ b/test/model/VoidCreditRequest.spec.js @@ -62,6 +62,12 @@ //expect(instance).to.be(); }); + it('should have the property paymentInformation (base name: "paymentInformation")', function() { + // uncomment below and update the code to test the property paymentInformation + //var instane = new CyberSource.VoidCreditRequest(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/VoidPaymentRequest.spec.js b/test/model/VoidPaymentRequest.spec.js index 9d6f3c6d..acb92059 100644 --- a/test/model/VoidPaymentRequest.spec.js +++ b/test/model/VoidPaymentRequest.spec.js @@ -62,6 +62,12 @@ //expect(instance).to.be(); }); + it('should have the property paymentInformation (base name: "paymentInformation")', function() { + // uncomment below and update the code to test the property paymentInformation + //var instane = new CyberSource.VoidPaymentRequest(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/VoidRefundRequest.spec.js b/test/model/VoidRefundRequest.spec.js index 951ccba9..fedf6af8 100644 --- a/test/model/VoidRefundRequest.spec.js +++ b/test/model/VoidRefundRequest.spec.js @@ -62,6 +62,12 @@ //expect(instance).to.be(); }); + it('should have the property paymentInformation (base name: "paymentInformation")', function() { + // uncomment below and update the code to test the property paymentInformation + //var instane = new CyberSource.VoidRefundRequest(); + //expect(instance).to.be(); + }); + }); }));