swagger: '2.0' info: description: All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html version: 0.0.1 title: CyberSource Merged Spec bankAccountValidation Subscriptions API host: apitest.cybersource.com basePath: / schemes: - https consumes: - application/json;charset=utf-8 produces: - application/hal+json;charset=utf-8 tags: - name: Subscriptions description: 'Create and manage Recurring Subscriptions. You have option to link subscription to plan or create independent subscriptions. ' paths: /rbs/v1/subscriptions: post: summary: Create a Subscription description: Create a Recurring Billing Subscription tags: - Subscriptions x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true mleForRequest: optional mleForResponse: optional consumes: - application/json;charset=utf-8 produces: - application/json - application/hal+json - application/json;charset=utf-8 - application/hal+json;charset=utf-8 operationId: createSubscription parameters: - name: createSubscriptionRequest in: body required: true schema: type: object properties: clientReferenceInformation: type: object properties: code: description: ' Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports. ' type: string maxLength: 59 processingInformation: type: object properties: commerceIndicator: description: '> This field is ignored when you provide the `subscriptionInformation.originalTransactionId` or update the subscription. Commerce Indicator is a way to identify the type of transaction. Some payment card companies use this information when determining discount rates. Valid values: - `MOTO` - `RECURRING` - `INTERNET` Please add the ecommerce indicator based on the rules defined by your gateway/processor. Some gateways may not accept the Commerce Indicator `RECURRING` with a Zero Dollar Authorization, that is done for subscriptions starting at a future date. ' type: string maxLength: 20 authorizationOptions: type: object properties: initiator: type: object properties: type: description: '> This field is ignored when you provide the `subscriptionInformation.originalTransactionId` or update the subscription. This field indicates whether the transaction is a merchant-initiated transaction or customer-initiated transaction. Valid values: - **customer** - **merchant** ' type: string planInformation: type: object properties: billingPeriod: type: object description: 'Billing Frequency ' properties: length: type: string description: 'Example: - If length=1 & unit=month then charge every month - If length=7 & unit=day then charge every 7th day ' unit: type: string description: "Calendar unit values.\n possible values:\n - `D` - day\n - `M` - month\n - `W` - week\n - `Y` - year\n" billingCycles: type: object description: 'Number of times customer is going to be billed ' properties: total: type: string description: 'Describe total number of billing cycles ' subscriptionInformation: type: object required: - name - startDate properties: code: type: string maxLength: 10 description: 'Subscription code is an optional field, If not provided system generates and assign one ' planId: type: string maxLength: 26 description: 'Plan Id. Use Plan Id from Create Plan Service. ' name: type: string maxLength: 100 description: 'Subscription Name ' startDate: type: string description: 'Start date of the Subscription Start date must be in UTC. Format: YYYY-MM-DDThh:mm:ssZ The T separates the date and the time. The Z indicates UTC. Note: Subscription starts on the day provided in UTC. **Example** 2022-08-11T22:47:57Z equals August 11, 2022, at 22:47:57 (10:47:57 p.m.). Subscription will start on August 11,2022. ' originalTransactionId: type: string maxLength: 50 description: 'Network transaction identifier that was returned in the payment response field _processorInformation.transactionId_ in the reply message for the original subscription-initializing payment. ' originalTransactionAuthorizedAmount: type: string maxLength: 19 description: 'Amount of the original subscription-initializing payment. *Required when using a Diners or Discover card*. ' paymentInformation: type: object properties: customer: type: object required: - id properties: id: type: string description: 'Unique identifier for the Customer token used in the transaction. When you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. ' minLength: 1 maxLength: 32 orderInformation: type: object properties: amountDetails: type: object properties: currency: type: string maxLength: 3 description: 'Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency. ' billingAmount: type: string maxLength: 19 description: 'Billing amount for the billing period. ' setupFee: type: string maxLength: 19 description: 'Subscription setup fee ' surcharge: type: object properties: amount: description: "Surcharge amount that you are charging the customer for this subscription. The surcharge amount will be added to the billing amount. \nThe issuer can provide information about the surcharge amount to 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" type: string maxLength: 15 description: maxLength: 255 description: 'Description of the surcharge. ' type: string example: subscriptionInformation: planId: '6868912495476705603955' name: Subscription with PlanId startDate: '2025-06-11' originalTransactionId: 016153570198200 paymentInformation: customer: id: C24F5921EB870D99E053AF598E0A4105 clientReferenceInformation: code: TC501713 responses: '201': description: Successful response. schema: title: createSubscriptionResponse type: object properties: _links: type: object properties: self: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' update: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' cancel: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' suspend: 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.' activate: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' id: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - COMPLETED\n - DECLINED\n" subscriptionInformation: type: object properties: code: type: string maxLength: 10 description: 'Subscription code. ' status: type: string description: "Subscription Status:\n - `PENDING`\n - `ACTIVE`\n - `FAILED`\n" clientReferenceInformation: type: object properties: code: description: ' Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports. ' type: string maxLength: 59 example: _links: self: href: /rbs/v1/subscriptions/4567000000000123456789 method: GET update: href: /rbs/v1/subscriptions/4567000000000123456789 method: PATCH cancel: href: /rbs/v1/subscriptions/4567000000000123456789/cancel method: POST suspend: href: /rbs/v1/subscriptions/4567000000000123456789/suspend method: POST activate: href: /rbs/v1/subscriptions/4567000000000123456789/activate method: POST id: '4567000000000123456789' submitTimeUtc: 2020-11-01T071957Z status: COMPLETED subscriptionInformation: code: SUB1 status: ACTIVE '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - 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_CARD_TYPE\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: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. x-example: example0: summary: Create Subscription sample-name: Create Subscription value: clientReferenceInformation: code: TC501713 subscriptionInformation: planId: '6868912495476705603955' name: Subscription with PlanId startDate: '2025-06-11' originalTransactionId: 016153570198200 paymentInformation: customer: id: C24F5921EB870D99E053AF598E0A4105 example1: summary: (deprecated) Create Subscription with Authorization sample-name: (deprecated) Create Subscription with Authorization value: clientReferenceInformation: code: TC501713 processingInformation: commerceIndicator: recurring authorizationOptions: initiator: type: merchant subscriptionInformation: planId: '6868912495476705603955' name: Subscription with PlanId startDate: '2024-06-11' paymentInformation: customer: id: C24F5921EB870D99E053AF598E0A4105 get: summary: Get a List of Subscriptions description: 'Retrieve Subscriptions by Subscription Code & Subscription Status. ' tags: - Subscriptions x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true consumes: - application/json;charset=utf-8 produces: - application/json - application/hal+json - application/json;charset=utf-8 - application/hal+json;charset=utf-8 operationId: getAllSubscriptions parameters: - name: offset in: query type: integer required: false description: Page offset number. - name: limit in: query type: integer required: false description: 'Number of items to be returned. Default - `20`, Max - `100` ' - name: code in: query type: string required: false description: Filter by Subscription Code - name: status in: query type: string required: false description: Filter by Subscription Status - name: customerId in: query type: string required: false description: Filter by Customer Id - name: clientReferenceInformationCode in: query type: string required: false description: Filter by Client Reference Information Code / Merchant Reference Number responses: '200': description: Successful response. schema: title: getAllSubscriptionsResponse type: object properties: _links: type: object properties: self: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' next: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' previous: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' totalCount: type: integer description: total number of subscriptions created subscriptions: type: array items: type: object description: Subscription list 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.' cancel: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' suspend: 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.' activate: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' id: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' planInformation: type: object properties: code: type: string maxLength: 10 description: 'Plan code ' name: type: string maxLength: 100 description: 'Plan name ' billingPeriod: type: object description: 'Billing Frequency ' properties: length: type: string description: 'Example: - If length=1 & unit=month then charge every month - If length=7 & unit=day then charge every 7th day ' unit: type: string description: "Calendar unit values.\n possible values:\n - `D` - day\n - `M` - month\n - `W` - week\n - `Y` - year\n" billingCycles: type: object properties: total: type: string description: 'Describe total number of billing cycles ' current: type: string description: 'Current billing cycle ' subscriptionInformation: type: object properties: code: type: string maxLength: 10 description: 'Subscription code. ' planId: type: string maxLength: 26 description: 'Plan Id. ' name: type: string maxLength: 100 description: 'Subscription Name ' startDate: type: string description: 'Start date of the Subscription Start date will be in UTC. Format: YYYY-MM-DDThh:mm:ssZ The T separates the date and the time. The Z indicates UTC. **Example** 2022-08-11T22:47:57Z equals August 11, 2022, at 22:47:57 (10:47:57 p.m.). ' status: type: string description: 'Subscription Status: - `PENDING` - `ACTIVE` - `FAILED` - `COMPLETED` - `DELINQUENT` - `SUSPENDED` - `CANCELLED` ' clientReferenceInformation: type: object properties: code: description: ' Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports. ' type: string maxLength: 59 paymentInformation: type: object properties: customer: type: object properties: id: type: string description: 'Unique identifier for the Customer token used in the transaction. When you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. ' minLength: 1 maxLength: 32 orderInformation: type: object properties: amountDetails: type: object properties: currency: type: string maxLength: 3 description: 'Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency. ' billingAmount: type: string maxLength: 19 description: 'Billing amount for the billing period. ' setupFee: type: string maxLength: 19 description: 'Subscription setup fee ' surcharge: type: object properties: amount: description: "Surcharge amount that you are charging the customer for this subscription. The surcharge amount will be added to the billing amount. \nThe issuer can provide information about the surcharge amount to 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" type: string maxLength: 15 description: maxLength: 255 description: 'Description of the surcharge. ' type: string billTo: type: object properties: firstName: description: 'Customer''s first name. ' type: string maxLength: 60 lastName: description: 'Customer''s last name. ' type: string maxLength: 60 '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - 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" 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: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. /rbs/v1/subscriptions/{id}: get: summary: Get a Subscription description: Get a Subscription by Subscription Id tags: - Subscriptions x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true consumes: - application/json;charset=utf-8 produces: - application/json - application/hal+json - application/json;charset=utf-8 - application/hal+json;charset=utf-8 operationId: getSubscription parameters: - name: id in: path type: string required: true description: Subscription Id responses: '200': description: Successful response. schema: title: getSubscriptionResponse 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.' cancel: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' suspend: 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.' activate: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' id: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' planInformation: type: object properties: code: type: string maxLength: 10 description: 'Plan code ' name: type: string maxLength: 100 description: 'Plan name ' billingPeriod: type: object description: 'Billing Frequency ' properties: length: type: string description: 'Example: - If length=1 & unit=month then charge every month - If length=7 & unit=day then charge every 7th day ' unit: type: string description: "Calendar unit values.\n possible values:\n - `D` - day\n - `M` - month\n - `W` - week\n - `Y` - year\n" billingCycles: type: object properties: total: type: string description: 'Describe total number of billing cycles ' current: type: string description: 'Current billing cycle ' subscriptionInformation: type: object properties: code: type: string maxLength: 10 description: 'Subscription code. ' planId: type: string maxLength: 26 description: 'Plan Id. ' name: type: string maxLength: 100 description: 'Subscription Name ' startDate: type: string description: 'Start date of the Subscription Start date will be in UTC. Format: YYYY-MM-DDThh:mm:ssZ The T separates the date and the time. The Z indicates UTC. **Example** 2022-08-11T22:47:57Z equals August 11, 2022, at 22:47:57 (10:47:57 p.m.). ' status: type: string description: 'Subscription Status: - `PENDING` - `ACTIVE` - `FAILED` - `COMPLETED` - `DELINQUENT` - `SUSPENDED` - `CANCELLED` ' paymentInformation: type: object properties: customer: type: object properties: id: type: string description: 'Unique identifier for the Customer token used in the transaction. When you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. ' minLength: 1 maxLength: 32 orderInformation: type: object properties: amountDetails: type: object properties: currency: type: string maxLength: 3 description: 'Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency. ' billingAmount: type: string maxLength: 19 description: 'Billing amount for the billing period. ' setupFee: type: string maxLength: 19 description: 'Subscription setup fee ' surcharge: type: object properties: amount: description: "Surcharge amount that you are charging the customer for this subscription. The surcharge amount will be added to the billing amount. \nThe issuer can provide information about the surcharge amount to 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" type: string maxLength: 15 description: maxLength: 255 description: 'Description of the surcharge. ' type: string billTo: type: object properties: firstName: description: 'Customer''s first name. ' type: string maxLength: 60 lastName: description: 'Customer''s last name. ' type: string maxLength: 60 clientReferenceInformation: type: object properties: code: description: ' Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports. ' type: string maxLength: 59 reactivationInformation: type: object properties: missedPaymentsCount: type: string maxLength: 10 description: 'Number of payments that should have occurred while the subscription was in a suspended status. ' missedPaymentsTotalAmount: type: string maxLength: 19 description: 'Total amount that will be charged upon reactivation if `processMissedPayments` is set to `true`. ' '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - 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" 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" '404': description: Not found. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - NOT_FOUND\n" '502': description: Unexpected system error or system timeout. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. patch: summary: Update a Subscription description: Update a Subscription by Subscription Id tags: - Subscriptions x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true consumes: - application/json;charset=utf-8 produces: - application/json - application/hal+json - application/json;charset=utf-8 - application/hal+json;charset=utf-8 operationId: updateSubscription parameters: - name: id in: path type: string required: true description: Subscription Id - name: UpdateSubscription in: body description: Update Subscription required: true schema: type: object properties: clientReferenceInformation: type: object properties: code: description: ' Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports. ' type: string maxLength: 59 processingInformation: type: object properties: commerceIndicator: description: '> This field is ignored when you provide the `subscriptionInformation.originalTransactionId` or update the subscription. Commerce Indicator is a way to identify the type of transaction. Some payment card companies use this information when determining discount rates. Valid values: - `MOTO` - `RECURRING` - `INTERNET` Please add the ecommerce indicator based on the rules defined by your gateway/processor. Some gateways may not accept the Commerce Indicator `RECURRING` with a Zero Dollar Authorization, that is done for subscriptions starting at a future date. ' type: string maxLength: 20 authorizationOptions: type: object properties: initiator: type: object properties: type: description: '> This field is ignored when you provide the `subscriptionInformation.originalTransactionId` or update the subscription. This field indicates whether the transaction is a merchant-initiated transaction or customer-initiated transaction. Valid values: - **customer** - **merchant** ' type: string planInformation: type: object properties: billingCycles: type: object description: 'Number of times customer is going to be billed ' properties: total: type: string description: 'Describe total number of billing cycles ' subscriptionInformation: type: object properties: code: type: string maxLength: 10 description: 'Subscription code is an optional field, If not provided system generates and assign one ' planId: type: string maxLength: 26 description: 'Plan Id. Use Plan Id from Create Plan Service. ' name: type: string maxLength: 100 description: 'Subscription Name ' startDate: type: string description: 'Start date of the Subscription Start date must be in UTC. Format: YYYY-MM-DDThh:mm:ssZ The T separates the date and the time. The Z indicates UTC. Note: Subscription starts on the day provided in UTC. **Example** 2022-08-11T22:47:57Z equals August 11, 2022, at 22:47:57 (10:47:57 p.m.). Subscription will start on August 11,2022. ' orderInformation: type: object properties: amountDetails: type: object properties: billingAmount: type: string maxLength: 19 description: 'Billing amount for the billing period. ' setupFee: type: string maxLength: 19 description: 'Subscription setup fee ' surcharge: type: object properties: amount: description: "Surcharge amount that you are charging the customer for this subscription. The surcharge amount will be added to the billing amount. \nThe issuer can provide information about the surcharge amount to 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" type: string maxLength: 15 description: maxLength: 255 description: 'Description of the surcharge. ' type: string responses: '200': description: Successful response. schema: title: updateSubscriptionResponse 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.' cancel: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' suspend: 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.' activate: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' id: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - COMPLETED\n - PENDING_REVIEW\n - DECLINED\n - INVALID_REQUEST\n" subscriptionInformation: type: object properties: code: type: string maxLength: 10 description: 'Subscription code. ' status: type: string description: "Subscription Status:\n - `PENDING`\n - `ACTIVE`\n - `FAILED`\n" '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - 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_CARD_TYPE\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" '404': description: Not found. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - NOT_FOUND\n" '502': description: Unexpected system error or system timeout. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. x-example: example0: summary: Update Subscription sample-name: Update Subscription value: subscriptionInformation: planId: 424242442 name: Gold subs startDate: '2024-06-15' orderInformation: amountDetails: billingAmount: 10 setupFee: 5 /rbs/v1/subscriptions/{id}/cancel: post: summary: Cancel a Subscription description: Cancel a Subscription tags: - Subscriptions x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true consumes: - application/json;charset=utf-8 produces: - application/json - application/hal+json - application/json;charset=utf-8 - application/hal+json;charset=utf-8 operationId: cancelSubscription parameters: - name: id in: path type: string required: true description: Subscription Id responses: '202': description: Successful response. schema: title: cancelSubscriptionResponse type: object properties: _links: type: object properties: self: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' id: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" subscriptionInformation: type: object properties: code: type: string maxLength: 10 description: 'Subscription code. ' status: type: string description: 'Subscription Status: - `CANCELLED` ' '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - 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" 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" '404': description: Not found. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - NOT_FOUND\n" '502': description: Unexpected system error or system timeout. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. /rbs/v1/subscriptions/{id}/suspend: post: summary: Suspend a Subscription description: 'Suspend a Subscription ' tags: - Subscriptions x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true consumes: - application/json;charset=utf-8 produces: - application/json - application/hal+json - application/json;charset=utf-8 - application/hal+json;charset=utf-8 operationId: suspendSubscription parameters: - name: id in: path type: string required: true description: Subscription Id responses: '202': description: Successful response. schema: title: suspendSubscriptionResponse type: object properties: _links: type: object properties: self: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' id: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" subscriptionInformation: type: object properties: code: type: string maxLength: 10 description: 'Subscription code. ' status: type: string description: 'Subscription Status: - `SUSPENDED` ' '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - 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" 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" '404': description: Not found. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - NOT_FOUND\n" '502': description: Unexpected system error or system timeout. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. /rbs/v1/subscriptions/{id}/activate: post: summary: Reactivating a Suspended Subscription description: "# Reactivating a Suspended Subscription\n\nYou can reactivate a suspended subscription for the next billing cycle. You cannot reactivate a canceled or completed subscription.\n\nYou can specify whether you want to process missed payments for the period during which the subscription was suspended using the `processMissedPayments` query parameter by setting it to true or false. \nIf no value is specified, the system will default to `true`.\n\n**Important:** The \"processMissedPayments\" query parameter is only effective when the Ask each time before reactivating option is selected in the reactivation settings. If any other option is chosen, the value provided in the request will be ignored by the system. For more information, see the [Recurring Billing User Guide](https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/user/all/rest/recurring-billing-user/recurring-billing-user-about-guide.html).\n\nYou can check how many payments were missed and the total amount by retrieving the subscription details, where you will find the `reactivationInformation` object. See: [Retrieving a Subscription](https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-subscriptions/recur-bill-getting-a-subscription.html).\n" tags: - Subscriptions x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true consumes: - application/json;charset=utf-8 produces: - application/json - application/hal+json - application/json;charset=utf-8 - application/hal+json;charset=utf-8 operationId: activateSubscription parameters: - name: id in: path type: string required: true description: Subscription Id - name: processMissedPayments in: query type: boolean description: 'Indicates if missed payments should be processed from the period when the subscription was suspended. By default, this is set to true. When any option other than "Ask each time before reactivating" is selected in the reactivation settings, the value that you enter will be ignored. ' required: false default: true responses: '200': description: Successful response. schema: title: activateSubscriptionResponse type: object properties: _links: type: object properties: self: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' id: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - COMPLETED\n" subscriptionInformation: type: object properties: code: type: string maxLength: 10 description: 'Subscription code. ' status: type: string description: 'Subscription Status: - `ACTIVE` ' '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - 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" 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" '404': description: Not found. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - NOT_FOUND\n" '502': description: Unexpected system error or system timeout. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. /rbs/v1/subscriptions/code: get: summary: Get a Subscription Code description: Get a Unique Subscription Code tags: - Subscriptions operationId: getSubscriptionCode x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true consumes: - application/json;charset=utf-8 produces: - application/json - application/hal+json - application/json;charset=utf-8 - application/hal+json;charset=utf-8 responses: '200': description: Successful response. schema: title: getSubscriptionCodeResponse type: object properties: code: type: string maxLength: 10 description: 'Subscription code. ' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - 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" 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: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. /rbs/v1/subscriptions/{id}/payments: get: summary: Get Payments for a Subscription description: 'Retrieve a list of payments for a specific subscription by its ID. ' tags: - Subscriptions x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true consumes: - application/json produces: - application/json operationId: subscriptionsIdPaymentsGet parameters: - name: id in: path type: string required: true description: Subscription Id - name: offset in: query type: integer required: false description: Page offset number. - name: limit in: query type: integer required: false description: 'Number of items to be returned. Default - `20`, Max - `100` ' - name: scheduledPaymentsCount in: query type: integer required: false description: 'Number of existing scheduled payments to be returned. Default - `5`, Max - `9999` ' responses: '200': description: Successful response. schema: title: getSubscriptionsPaymentsResponse type: object properties: _links: type: object properties: self: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' next: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' prev: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' totalCount: type: integer description: Total number of payments returned for the subscription, including both past payments and those specified in scheduledPaymentsCount. cyclesCompletedCount: type: object properties: paid: type: integer description: The number of payment cycles that have status PAID. description: An object containing the count of completed payment cycles by status. billingCyclesToSkip: type: array items: type: integer description: A list of billing cycles that are marked to be skipped. subscriptionPayment: type: array items: type: object properties: id: type: string description: Identifier assigned by Recurring Billing to uniquely reference this billing cycle's payment, distinct from the Cybersource transactionID. status: type: string description: "The current status of the payment. \nPossible values: \n - SCHEDULED \n - PAID\n - FAILED\n - SKIPPED\n - SCHEDULED_SKIPPED\n" paymentType: type: string description: 'The type of payment. Possible values: - STANDARD - RETRY ' transactionID: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' date: type: string format: date-time description: The date and time of the payment processing. currency: type: string maxLength: 3 description: 'Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency. ' billingStartDate: type: string format: date-time description: The start date of the billing cycle for this payment. billingEndDate: type: string format: date-time description: The end date of the billing cycle for this payment. billingCycle: type: string description: The billing cycle number. paymentNumber: type: string description: The sequential number of the payment in the subscription. billingAmount: type: string description: The amount billed for this payment. setupFee: type: string description: The setup fee associated with the payment. surchargeAmount: type: string description: The surcharge amount, if any. surchargeDescription: type: string description: The description for the surcharge. modifiable: type: boolean description: Indicates if the payment is modifiable, meaning it can be skipped or restored. description: The list of subscription payment details. '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - INVALID_DATA\n - INVALID_MERCHANT_CONFIGURATION \n" message: type: string description: The detail message related to the status and reason listed above. details: type: array items: type: object properties: field: type: string description: This is the flattened JSON object field name/path that is either missing or invalid. reason: type: string description: "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" '404': description: Not found. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - NOT_FOUND\n" '502': description: Unexpected system error or system timeout. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. put: summary: Update Payments for a subscription description: "Modifies the state of a subscription's payments.\nCurrently, the only possible modifications are \"skipping\" and \"restoring\" payments. \nMarking a payment as \"skipped\" means it will not be processed when its scheduled time arrives. \"Restoring\" a payment removes it from the list of payments to be skipped.\n" tags: - Subscriptions x-devcenter-metaData: categoryTag: Recurring_Billing_Subscriptions developerGuides: https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-dev/recur-bill-dev-intro.html disableProcessorDropDown: true consumes: - application/json produces: - application/json operationId: subscriptionsIdPaymentsPut parameters: - name: id in: path type: string required: true description: Subscription Id - name: UpdatePayments in: body description: Modify payments of a subscription required: true schema: type: object properties: billingCyclesToSkip: type: array items: type: integer description: 'A list of billing cycles that are marked to be skipped. The payment cannot be added to the list if it is a retry attempt. The payment cannot be added to or removed from the list if it is on the same day as its scheduled processing time. ' responses: '200': description: Successful response. schema: title: getSubscriptionsPaymentsResponse type: object properties: _links: type: object properties: self: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' update: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - COMPLETED\n - PENDING_REVIEW\n - DECLINED\n - INVALID_REQUEST\n" billingCyclesToSkip: type: array items: type: integer description: A list of billing cycles that are marked to be skipped. '400': description: Invalid request. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - INVALID_MERCHANT_CONFIGURATION\n" message: type: string description: The detail message related to the status and reason listed above. details: type: array items: type: object properties: field: type: string description: This is the flattened JSON object field name/path that is either missing or invalid. reason: type: string description: "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" '404': description: Not found. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - NOT_FOUND\n" '502': description: Unexpected system error or system timeout. schema: type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. x-example: example0: summary: Skip Subscription Payments sample-name: Skip Subscription Payments value: billingCyclesToSkip: - 3 - 5 example1: summary: Restore Subscription Payments sample-name: Restore Subscription Payments value: billingCyclesToSkip: [] x-devcenter-metaData: categoryTagArray: - name: Payments description: For more information about Payments transactions, see the [Payments Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html). - name: Transaction_Batches description: For more information about Transaction Batches, see the [Transaction Batches Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-transaction-batch-api/txn_batch_api_intro.html). - name: eCheck_AVS description: For more information about eCheck Account Validation, see the [Account Validation Developer Guides Page](https://...). - name: Token_Management description: For more information about the Token Management Service (TMS) see the [Token Management Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/tms/developer/all/rest/tms/tms-overview.html) - name: Flex_Microform description: Microform Integration is a lightweight acceptance solution designed to safely and securely accept payment information within your web page. Microform is designed to a be embedded seamlessly within your existing webpage experience, blending in with your existing acceptance form. This solution allows for the replacement of sensitive payment date with a transient token (a short lived reference to the sensitive payment data). For more information about Flex Microform transactions, see the [Flex Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-flex/SAFlexibleToken.html). For examples on how to integrate Flex Microform within your webpage please see our [GitHub Flex Samples](https://github.com/CyberSource?q=flex&type=&language=) - name: Flex_API description: For more information about Flex API, please see [Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/digital-accept-flex/developer/all/rest/digital-accept-flex/da-flex-api-intro.html). - name: Risk_Management - name: Payouts description: 'For more information about Payouts, see the [Payouts Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-payouts/Introduction.html). ' - name: Installments description: For more information about Installment contact Cybersource Support. For Visa installments contact VISthroughCYBS@visa.com - name: Recurring_Billing_Subscriptions description: For more information about Recurring Billing, see the [Recurring Billing Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-developer/recur-bill-services-intro.html). - name: BIN_Lookup description: 'The BIN Lookup Service is a versatile business tool that provides card network agnostic solution designed to ensure frictionless transaction experience by utilizing up-to-date Bank Identification Number (BIN) attributes sourced from multiple global and regional data sources. This service helps to improve authorization rates by helping to route transactions to the best-suited card network, minimizes fraud through card detail verification and aids in regulatory compliance by identifying card properties. The service is flexible and provides businesses with a flexible choice of inputs such as primary account number (PAN), network token from major networks (such as Visa, American Express, Discover and regional networks) which includes device PAN (DPAN), and all types of tokens generated via CyberSource Token Management Service (TMS). Currently, the range of available credentials is contingent on the networks enabled for the business entity. Therefore, the network information specified in this documentation is illustrative and subject to personalized offerings for each reseller or merchant. ' - name: Transaction_Details description: For more information about Transaction Details, see the [Transaction Details Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_details_api.html). - name: Transaction_Search description: For more information about Transaction Search, see the [Transaction Search Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_search_api.html). - name: Reporting description: 'For more information about Reporting, see the [Reporting Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-reporting-rest-api-dev-guide-102718/reporting_api.html). ' - name: Secure_File_Share description: For more information about Secure File Share, see the [Secure File Share Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-secure-file-share-api-102718/secure_file_share_api_intro.html). - name: Invoices description: For more information about Invoicing, see the [Invoicing Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/invoicing/developer/all/rest/invoicing/Introduction.html). - name: Pay_By_Link description: For more information about PayByLink, see the [PBL Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/boarding/user/all/rest/boarding/templates-matrix-intro/templates-matrix-pay-by-link.html). - name: User_Management description: For more information about User Management, see the [User Managment Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-user-management-api-102718/user_management_api_intro.html). - name: Value_Added_Service - name: Fee Service - name: Merchant_Boarding description: For more information about Merchant Boarding, please see [Developer Guides Page](https://developer.cybersource.com/api/developer-guides/Merchant-Boarding-API_ditamap/Merchant-Boarding-API.html). - name: Webhooks description: For more information about Webhooks, please see [Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/webhooks/implementation/all/rest/webhooks/wh-fg-intro.html). - name: Unified_Checkout description: For more information about Unified Checkout, see the [Unified Checkout Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/unified-checkout/developer/all/rest/unified-checkout/uc-intro.html). - name: Unified_Checkoutv1 description: For more information about Unified Checkout, see the [Unified Checkout Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/unified-checkout/developer/all/rest/unified-checkout/uc-about-guide.html). - name: Account_Updater description: For more information about Account Updater, see the [Account Updater Developer Guides Page:](https://developer.cybersource.com/library/documentation/dev_guides/Account_Updater_UG/html/index.html). - name: Visa_Bank_Account_Validation description: 'The Visa Bank Account Validation Service is a new standalone product designed to validate customer''s routing and bank account number combination for ACH transactions. Merchant''s can use this standalone product to validate their customer''s account prior to processing an ACH transaction against the customer''s account to comply with Nacha''s account validation mandate for Web-debit transactions. ' - name: Currency Conversion description: 'Empower global transactions with transparency and choice. Our Dynamic Currency Conversion API lets merchants offer customers the option to pay in their home currency at checkout, delivering real-time exchange rates and clear cost disclosure. **Key Benefits:** - **Enhanced Customer Experience:** Provide clarity and convenience for international shoppers. - **Real-Time Rates:** Accurate currency conversion with all the data required for acquirers and their merchants to maintain compliance with card network rules. - **Seamless Integration:** Flexible API endpoints for rate lookup, authorization, and capture. - **Regulatory Compliance:** Provides the data required for acquirers and merchants to meet and maintain card scheme requirements for disclosure and consent. Ideal for merchants and payment partners seeking to boost trust and conversion in cross-border commerce. **Key Features:** - **Rate Lookup:** Retrieves the most up-to-date exchange rate for eligible cards before authorization. - **Currency Choice:** Enables the merchant to offer customers the option to select between the merchant''s local currency and their card''s billing currency. - **Compliance:** Ensures merchants have the data required to adhere to card network regulations; exchange rates, markups, etc. **Supported Scenarios:** - Dynamic Currency Conversion when cardholder''s billing currency differs from merchant''s pricing currency. - Merchant and acquirer must support the cardholder''s billing currency. **Core API Endpoints:** **Currency Conversion API** Returns eligibility and exchange rate details, including: - exchangeRate - marginRate - reconciliationId and Id (for subsequent payment requests) **Payment Authorization with DCC*** POST /pts/v2/payments Required fields include: - orderInformation.amountDetails.currency - orderInformation.amountDetails.originalCurrency - orderInformation.amountDetails.originalAmount - orderInformation.amountDetails.exchangeRate - currencyConversion.indicator (e.g., 1 = Converted, 2 = Nonconvertible, 3 = Declined) **Capture with DCC*** POST /pts/v2/payments/{id}/captures Maps from original authorization and includes original and converted amounts. **Refund with DCC*** POST /pts/v2/captures/{id}/refunds Maps from original authorization and includes original and converted amounts. *Note: DCC is only supported on select processors. Contact your acquirer or account manager for more information. **Compliance & Disclosure:** Merchants must: - Adhere to card network rules for Dynamic Currency Conversion (DCC) transactions. - Display the converted amount, exchange rate, and markup percentage and other required disclosures. - Obtain explicit cardholder consent before applying DCC. - Work with your acquirer to obtain full set of compliance requirements. For more information, see the [Currency Conversion Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/currency-conversion/developer/all/rest/currency-conversion/cc-intro.html). ' - name: Intelligent_Commerce_Connect description: For more information about Intelligent Commerce Cross Network Service API, please see [Developer Guides](https://developer.cybersource.com/docs/cybs/en-us/intelligent-commerce/developer/all/rest/intelligent-commerce/intelligent-commerce-about-guide.html).