openapi: 3.1.0 info: title: Payment Gateways Introduction description: | Payments for orders are processed through a payment gateway. Composable Commerce offers integrations for a selection of payment gateway providers, or you can create your own integrations. Payment transactions are processed similarly for all gateways: 1. A payment transaction is created and an attempt to pay is made. 2. The transaction is forwarded to the third-party gateway specified by the customer. 3. The payment is processed by the third-party gateway. Payment transactions are always processed outside of Composable Commerce for security reasons. Typically, you use a token rather than pass the card details directly. If, however, you want to pass the cart details directly to the third-party provider, Composable Commerce enforces the use of the secure HTTPS protocol. If the transaction is successful, a `200 OK` response is returned. Use the response (success or failure) to update the transaction, which automatically updates the order and payment statuses. A payment transaction can also be refunded. You can select which way you want to process refunds: - Mark as Refunded: You can use your payment gateway’s console to process a refund. Process the refund first in the payment gateway and then use the **Mark as Refunded** capability in Composable Commerce to complete the process. - Refund through Composable Commerce: Start a full or partial refund to a supported payment provider directly from Commerce Manager or the API. You still have the ability to mark as refunded for a pre-integrated gateway, such as Stripe. :::caution Configure your store to use [Manual Gateway](/docs/api/carts/authorize-setup) to process payments if the order total is zero or the payment is through non-supported payment providers. ::: ### Order Status Workflow The following image shows the workflow of the order status when you checkout a cart. ![Order Workflow](/assets/Order-Workflow.png) ### Summary of the Workflow 1. [Checkout a cart](/docs/api/carts/checkout). When you checkout a cart, an unpaid order is returned. 2. [Paying for an order](/docs/api/carts/payments). You can process the payment for an order through a payment gateway. You can pay for an order either using purchase payment method or authorize payment method. 3. Confirm the order. Order confirmation might be required when you purchase or authorize a transaction. If you use a purchase method, the order is immediately confirmed. If you use authorize method, funds are captured later when an item is dispatched or restocked, and then the order is considered as complete. See [Capture a Transaction](https://elasticpath.dev/docs/commerce-cloud/payments/transactions/capture-a-transaction). 4. [Fulfill, Refund or Cancel the paid order](/docs/api/carts/refund-a-transaction). The order is considered as fulfilled when it is shipped. You can cancel the order after the checkout or if the order is not fulfilled. You can also choose to refund a partial payment or full payment. 5. (Optional) [Cancel a transaction](/docs/api/carts/cancel-a-transaction). You can cancel or void a pending or authorized transaction. The transaction can be canceled or voided when it is in pending and completed statuses. This works only for Stripe and PayPal and does not work for manual gateway. 6. (Optional) [Anonymize an order](/docs/api/carts/anonymize-orders). You can anonymize an order when it is fulfilled, canceled, or fully refunded. ### Split Payments Split payments involve multiple payment sources for a single order, using externally authorized payments. For example, you can pay for an order using a gift card and a credit card. An order with multiple payment transactions can also be in multiple payment states depending on each transaction. Transactions for split payments are processed similarly for all gateways: 1. A partial payment transaction is created and an attempt to pay the partial amount is made. 2. The transaction for the specified amount is forwarded to the payment gateway specified by the customer. 3. The partial payment is processed. 4. Another partial payment transaction is created and an attempt to pay the remaining amount is made. 5. Another transaction for the remaining amount is forwarded to the payment gateway specified by the customer. 6. The payment is processed, paid, and complete. The payment status must show paid after the order is completed. You can refund transactions for split payments. For more information about refund, see Refund a Payment. The following scenarios show how a shopper can use multiple sources for split payment: - Gift card and credit card - Purchase order and credit card - Store credit and credit card - Employee dollars and credit card - Gift card and loyalty card - Loyalty card and wallet The following image shows a workflow of the split payments. ![Split Payments](/assets/split-payment-workflow.png) The following table describes the payment and order statuses that you can see when an order is passed through multiple stages. | Payment Status | Order Status | Inventory Status | Description | |:-----------------|:-------------|:---------------------|:------------| | `partially_authorized` | `incomplete` | Allocated | Indicates that the payment is partially_authorized and the balance_owing value is greater than zero. In this case, one of the transactions is authorized and complete. | | `partially_paid` | `incomplete` |Allocated | Indicates that the funds are captured but the balance_owing value is greater than zero. In this case, one of the transactions is captured or purchase is complete. | | `unpaid` | `incomplete` | Not Allocated | Indicates that the order does not have any complete payment transactions. In this case, all the transactions or any of the transactions can be still pending. | | `authorized` | `processing` | Allocated | Indicates that completed transactions cover the entire total amount for an order and at least one of the transactions is authorized. | | `paid` | `complete` | Allocated | Indicates that the order is complete and the amount for the order is fully paid when all authorized transactions are captured or purchase transactions are complete. | contact: name: Elastic Path url: https://elasticpath.com version: 1.0.0 servers: - url: https://useast.api.elasticpath.com description: US East Production Server variables: { } - url: https://euwest.api.elasticpath.com description: EU West Production Server variables: { } paths: /v2/gateways: get: tags: - Gateways summary: Get all Gateways description: Retrieves all gateways. operationId: getAllGateways responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: array items: $ref: '#/components/schemas/Response.Gateway' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/{gatewaySlug}: get: tags: - Gateways summary: Get a Gateway description: Retrieves the specified gateway. operationId: getAGateway parameters: - name: gatewaySlug in: path description: The slug of the gateway. required: true schema: type: string enum: - manual - braintree - stripe - stripe_payment_intents - stripe_connect - elastic_path_payments_stripe - paypal_express_checkout - adyen - authorize_net - card_connect - cyber_source responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: $ref: '#/components/schemas/Response.Gateway' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/manual: put: tags: - Gateways summary: Update Manual Gateway description: This endpoint allows you update the manual gateway. operationId: updateManualGateway parameters: [ ] requestBody: description: '' content: application/json: schema: oneOf: - $ref: '#/components/schemas/Request.UpdateManualGateway' contentMediaType: application/json examples: default: value: data: enabled: true required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. example: true type: boolean name: description: Specifies the nme of the gateway. example: Manual type: string slug: description: Specifies the slug of the gateway. example: manual type: string type: description: Specifies the type of object being returned. example: gateway type: string '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/braintree: put: tags: - Gateways summary: Update Braintree Gateway description: Use this endpoint to configure Braintree. operationId: updateBraintreeGateway parameters: [ ] requestBody: description: '' content: application/json: schema: allOf: - $ref: '#/components/schemas/Request.UpdateBraintreeGateway' contentMediaType: application/json examples: default: value: data: enabled: true environment: sandbox merchant_id: '{{braintreeMerchantId}}' private_key: '{{braintreePrivateKey}}' public_key: '{{braintreePublicKey}}' required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. example: true type: boolean name: description: Specifies the name of the gateway. example: Braintree type: string environment: description: Specifies production or sandbox environment. example: sandbox type: string merchant_id: description: Specifies Your Braintree merchant ID. example: '{{braintreeMerchantId}}' type: string private_key: description: Represents Your Braintree private key. example: '{{braintreePrivateKey}}' type: string public_key: description: Indicates Your Braintree public key. example: '{{braintreePublicKey}}' type: string slug: description: Represents the slug of the gateway. example: braintree type: string type: description: Specifies the type of object being returned. example: gateway type: string '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/stripe: put: tags: - Gateways summary: Update Stripe Gateway description: Use this endpoint to configure Stripe. operationId: updateStripeGateway parameters: [ ] requestBody: description: '' content: application/json: schema: allOf: - $ref: '#/components/schemas/Request.UpdateStripeGateway' contentMediaType: application/json examples: default: value: data: enabled: true login: '{{stripeToken}}' required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. example: true type: boolean login: description: Represents Stripe test or live secret key. example: '{{stripeToken}}' type: string name: description: Specifies the name of the gateway. example: Stripe type: string slug: description: Represents the slug of the gateway. example: stripe type: string type: description: Specifies the type of object being returned. example: gateway type: string '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/stripe_payment_intents: put: tags: - Gateways summary: Update Stripe Payment Intents Gateway description: Use this endpoint to configure Stripe Payment Intents. operationId: updateStripeIntentsGateway parameters: [ ] requestBody: description: '' content: application/json: schema: allOf: - $ref: '#/components/schemas/Request.UpdateStripeGateway' contentMediaType: application/json examples: default: value: data: enabled: true login: '{{stripeLoginToken}}' required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. example: true type: boolean login: description: Specifies the Stripe secret key for your account that is in live or test mode. example: '{{stripeLoginToken}}' type: string name: description: Specifies the name of the gateway. example: Stripe Payment Intents type: string slug: description: Represents the slug of the gateway. example: stripe_payment_intents type: string type: description: Specifies the type of object being returned. example: gateway type: string '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/stripe_connect: put: tags: - Gateways summary: Update Stripe Connect Gateway description: | Use this endpoint to configure Stripe Connect in Commerce. :::note You can contact Elastic Path sales or [customer success team](mailto:customersuccess@elasticpath.com) to get more information about Stripe Connect and to check whether it will work for you. ::: operationId: updateStripeConnectGateway parameters: [ ] requestBody: description: '' content: application/json: schema: allOf: - $ref: '#/components/schemas/Request.UpdateStripeConnectGateway' contentMediaType: application/json examples: default: value: data: enabled: true stripe_account: '{{stripeConnectAccountId}}' test: true required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. example: true type: boolean stripe_account: description: Specifies the Stripe Connect account ID. example: '{{stripeConnectAccountId}}' type: string name: description: Specifies the name of the gateway. example: Stripe Connect type: string test: description: Specifies whether the test mode is enabled. Set `true` to enable test mode and `false` to disable the test mode. Default is `false`. example: true type: boolean slug: description: Represents the slug of the gateway. example: stripe_connect type: string type: description: Specifies the type of object being returned. example: gateway type: string '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/elastic_path_payments_stripe: put: tags: - Gateways summary: Update Elastic Path Payments Powered by Stripe description: | Use this endpoint to configure Elastic Path Payments Powered by Stripe in Commerce. :::note You can contact Elastic Path sales or [customer success team](mailto:customersuccess@elasticpath.com) to get more information about Elastic Path Payments Powered by Stripe and to check whether it will work for you. ::: operationId: updateEpPaymentsStripe parameters: [ ] requestBody: description: '' content: application/json: schema: allOf: - $ref: '#/components/schemas/Request.UpdateElasticPathPaymentsStripeGateway' contentMediaType: application/json examples: default: value: data: enabled: true stripe_account: '{{stripeConnectAccountId}}' test: true required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. example: true type: boolean stripe_account: description: Specifies the Stripe account ID. example: '{{stripeConnectAccountId}}' type: string name: description: Specifies the name of the gateway. example: Elastic Path Payments powered by Stripe type: string test: description: Specifies whether the test mode is enabled. Set `true` to enable test mode and `false` to disable the test mode. Default is `false`. example: true type: boolean slug: description: Represents the slug of the gateway. example: elastic_path_payments_stripe type: string type: description: Specifies the type of object being returned. example: gateway type: string '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/paypal_express_checkout: put: tags: - Gateways summary: Update PayPal Express Checkout description: | Use this endpoint to configure PayPal Express Checkout. :::note To learn more about PayPal Express Checkout and check whether it will work for you, contact your sales or [customer success team](mailto:customersuccess@elasticpath.com). ::: operationId: updatePaypalExpressCheckoutGateway parameters: [ ] requestBody: description: '' content: application/json: schema: allOf: - $ref: '#/components/schemas/Request.UpdatePaypalExpressCheckoutGateway' contentMediaType: application/json examples: default: value: data: enabled: true payer_id: '{{merchant account id}}' test: true required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. example: true type: boolean payer_id: description: Specifies the merchant account ID. The ID is displayed in the PayPal account details of the merchant. example: '{{merchant account id}}' type: string name: description: Specifies the name of the gateway. example: PayPal Express Checkout type: string test: description: Specifies whether the test mode is enabled. Set `true` to enable test mode and `false` to disable the test mode. Default is `false`. example: true type: boolean slug: description: Represents the slug of the gateway. example: paypal_express_checkout type: string type: description: Specifies the type of object being returned. example: gateway type: string '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/adyen: put: tags: - Gateways summary: Update Adyen Gateway description: Use this endpoint to configure Adyen. operationId: updateAdyenGateway parameters: [ ] requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/UpdateAdyenGatewayRequest' examples: default: value: data: enabled: true merchant_account: 'MyCompanyECOM' username: 'ws@Company.MyCompany' password: 'xxx' test: false required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object allOf: - $ref: '#/components/schemas/Response.Gateway' - properties: merchant_account: description: Represents your Adyen merchant account code. For example, MyCompanyECOM. type: string example: MyCompanyECOM '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/authorize_net: put: tags: - Gateways summary: Update Authorize.net Gateway description: Use this endpoint to configure Authorize.net. operationId: updateAuthorizeNetGateway parameters: [ ] requestBody: description: '' content: application/json: schema: allOf: - $ref: '#/components/schemas/Request.UpdateAuthorizeNetGateway' examples: default: value: data: login: 'xxx' password: 'xxx' slug: 'authorize_net' enabled: true test: true required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object allOf: - $ref: '#/components/schemas/Response.Gateway' - properties: password: description: Indicates Authorize.net Transaction Key. type: string example: 'authorize-net-transaction-key' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/card_connect: put: tags: - Gateways summary: Update CardConnect Gateway description: Use this endpoint to configure CardConnect. operationId: updateCardConnectGateway parameters: [ ] requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/Request.UpdateCardConnectGateway' examples: default: value: data: merchant_id: 'xxx' username: 'xxx' password: 'xxx' test: false enabled: false required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object allOf: - $ref: '#/components/schemas/Response.Gateway' - properties: merchant_id: description: Specifies your CardConnect Merchant ID. type: string '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false /v2/gateways/cyber_source: put: tags: - Gateways summary: Update CyberSource Gateway description: Use this endpoint to configure CyberSource. operationId: updateCyberSourceGateway parameters: [ ] requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/Request.UpdateCyberSourceGateway' examples: default: value: data: enabled: true login: 'xxx' password: 'xxx' test: true required: false responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Response.Data' - properties: data: type: object allOf: - $ref: '#/components/schemas/Response.Gateway' - properties: login: description: Represents your live or test CyberSource merchant ID. type: string example: 'cybersource-merchant-id' password: description: Indicates your live or test CyberSource SOAP key. type: string example: 'cybersource SOAP key' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/Response.Error' example: errors: status: 401 title: Unauthorized deprecated: false components: schemas: Request.UpdateManualGateway: title: Update Manual Gateway Request type: object properties: data: $ref: '#/components/schemas/Data.UpdateManualGateway' Data.UpdateManualGateway: title: Update Manual Gateway Data type: object properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. type: boolean examples: true Request.UpdateBraintreeGateway: title: Update Braintree Gateway Request type: object properties: data: $ref: '#/components/schemas/Data.UpdateBraintreeGateway' Data.UpdateBraintreeGateway: title: Update Braintree Gateway Data type: object required: - merchant_id - private_key - public_key properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. type: boolean examples: - true environment: description: Specifies production or sandbox environment. type: string examples: - sandbox merchant_id: description: Specifies Your Braintree merchant ID. type: string examples: - '{{braintreeMerchantId}}' private_key: description: Represents Your Braintree private key. type: string examples: - '{{braintreePrivateKey}}' public_key: description: Indicates Your Braintree public key. type: string examples: - '{{braintreePublicKey}}' Request.UpdateStripeGateway: title: Update Stripe Gateway Request type: object properties: data: $ref: '#/components/schemas/Data.UpdateStripeGateway' Data.UpdateStripeGateway: title: Update Stripe Gateway Data type: object required: - login properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. type: boolean examples: - true login: description: Represents Stripe `test` or `live` secret key. type: string examples: - '{{stripeToken}}' Request.UpdateStripeConnectGateway: title: Update Stripe Connect Gateway Request type: object properties: data: $ref: '#/components/schemas/Data.UpdateStripeConnectGateway' Request.UpdateElasticPathPaymentsStripeGateway: title: Update Elastic Path Payments by Stripe Gateway Request type: object properties: data: $ref: '#/components/schemas/Data.UpdateStripeConnectGateway' Data.UpdateStripeConnectGateway: title: Update Stripe Connect Gateway Data type: object required: - stripe_account properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. type: boolean examples: - true stripe_account: description: Specifies the Stripe Connect account ID. type: string examples: - '{{stripeConnectAccountId}}' test: description: Specifies whether the test mode is enabled. Set `true` to enable test mode and `false` to disable the test mode. Default is `false`. type: boolean examples: - true Request.UpdatePaypalExpressCheckoutGateway: title: Update Paypal Express Checkout Gateway Request type: object properties: data: $ref: '#/components/schemas/Data.UpdatePaypalExpressCheckoutGateway' Data.UpdatePaypalExpressCheckoutGateway: title: Update Paypal Express Checkout Gateway Data type: object required: - payer_id properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. type: boolean examples: - true payer_id: description: Specifies the merchant account ID. The ID is displayed in the PayPal account details of the merchant. type: string examples: - '{{merchant account id}}' test: description: Specifies whether the test mode is enabled. Set `true` to enable test mode and `false` to disable the test mode. Default is `false`. type: boolean examples: - true UpdateAdyenGatewayRequest: title: Update Adyen Gateway Request type: object properties: data: $ref: '#/components/schemas/Data.UpdateAdyenGateway' Data.UpdateAdyenGateway: title: Update Adyen Gateway Data type: object required: - merchant_account - username - password properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. type: boolean examples: - true merchant_account: description: Represents your Adyen merchant account code. For example, MyCompanyECOM. type: string username: description: Indicates your web service username. For example, ws@Company.MyCompany. type: string password: description: Specifies your web service user Basic Auth password. type: string test: description: Specifies whether the test account is enabled or disabled. Set `true` to enable the test account and `false` to disable the test account. Default is `false`. type: boolean examples: - false Request.UpdateAuthorizeNetGateway: title: Update Authorize Net Gateway Request type: object properties: data: $ref: '#/components/schemas/UpdateAuthorizeNetGatewayData' UpdateAuthorizeNetGatewayData: title: Update Authorize Net Gateway Data type: object required: - login - password properties: login: description: Represents Authorize.net API Login ID. type: string password: description: Indicates Authorize.net Transaction Key. type: string slug: description: Specifies a unique slug for this gateway. type: string enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. type: boolean examples: - true test: description: Specifies whether the test account is enabled or disabled. Set `true` to enable the test account and `false` to disable the test account. Default is `false`. type: boolean examples: - true Request.UpdateCardConnectGateway: title: Update CardConnect Gateway Request type: object properties: data: $ref: '#/components/schemas/Data.UpdateCardConnectGateway' Data.UpdateCardConnectGateway: title: Update CardConnect Gateway Data type: object required: - merchant_id - username - password properties: merchant_id: description: Specifies your CardConnect Merchant ID. type: string username: description: Represents your CardConnect username. type: string password: description: Indicates your CardConnect password. type: string test: description: Specifies whether the test account is enabled or disabled. Set `true` to enable the test account and `false` to disable the test account. Default is `false`. type: boolean examples: - false enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. type: boolean examples: - false Request.UpdateCyberSourceGateway: title: 'Update CyberSource Gateway Request' type: object properties: data: $ref: '#/components/schemas/Data.UpdateCyberSourceGateway' Data.UpdateCyberSourceGateway: title: Update CyberSource Gateway Data type: object required: - login - password properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. type: boolean examples: - true test: description: Specifies whether the test account is enabled or disabled. Set `true` to enable the test account and `false` to disable the test account. Default is `false`. type: boolean examples: - true login: description: Represents your live or test CyberSource merchant ID. type: string password: description: Indicates your live or test CyberSource SOAP key. type: string Response.Gateway: type: object properties: enabled: description: Specifies whether the gateway is enabled or disabled. Set `true` to enable the gateway and `false` to disable the gateway. Default is `false`. example: true type: boolean login: description: Represents your login ID. type: string name: description: Represents the name of the gateway. example: '{gatewayName}' type: string type: description: Specifies the type of object being returned. example: gateway type: string password: description: Specifies your password. type: string signature: type: string slug: description: Specifies the slug of the gateway. example: '{gatewaySlug}' type: string test: description: Specifies whether the test mode is enabled. Set `true` to enable test mode and `false` to disable the test mode. Default is `false`. example: false type: boolean Response.Data: type: object properties: data: { } Response.Error: type: array properties: detail: type: string status: type: string title: type: string security: [ ] tags: - name: Gateways