{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/elastic-path/main/json-schema/payments.json", "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.", "version": "25.1125.6251808", "$defs": { "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.UpdateElasticPathPaymentsStripeGateway": { "title": "Update Elastic Path Payments by Stripe Gateway Request", "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Data.ElasticPathPaymentsStripeGateway" } } }, "Data.ElasticPathPaymentsStripeGateway": { "title": "Update Elastic Path Payments by Stripe 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 account ID.", "type": "string", "examples": [ "{{stripeAccountId}}" ] }, "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" } } } } }