> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kibocommerce.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Checkout Settings

> Retrieves all checkout settings defined for the site: Payment settings, such as the payment gateway ID and credentials,supported credit cards,Customer Checkout settings whether login is required and any custom attributes; and Order Processing settings, such as when payment is authorized and captured, and any custom attributes.



## OpenAPI

````yaml /openapi/openapi_settings.json get /commerce/settings/checkout
openapi: 3.0.1
info:
  description: |-
    <div id="overview_SETTINGS">
                <h2>SITE SETTINGS</h2>
                <p>The Site Settings APIs are a collection of resources used to manage settings for sites, checkout, installed applications, locations,
                    shipping, and general settings for a site. For more information about site settings and the associated configurations in the Unified Commerce Admin
                    interface, see the <a href="/pages/system">Settings user guides</a>.</p>
                <p>Use the <strong>Cart</strong> resource to manage settings for the cart, such as whether to include handling fees in the
                    cost calculations.</p>
                <p>Use the <strong>Checkout Settings</strong> resource to specify the site-wide settings that define checkout and order
                    processing behavior. This resource includes subresources for payment settings, customer checkout
                    settings, and order processing settings.</p>
                <p>Use the <strong>Fulfillment Settings</strong> resource to define site-wide fulfillment options such as the default
                    backorder duration, rejection actions, and BPM configurations.</p>
                <p>Use the <strong>General Settings</strong> resource to define global site settings such as the site name, shipping and
                    email addresses, and logo images. You can block undesirable IP addresses using this resource as well as
                    configure <a href="/pages/custom-route-settings">custom
                        routes</a>.</p>
                <p>Use the <strong>Inventory Settings</strong> resource to enable or disable inventory jobs and set a preferred time of day
                    for the jobs to run at.</p>
                <p>Use the <strong>Return Settings</strong> resource to specify the default return options for processing fees, shipping
                    locations, and label generation.</p>
                <p>Use the <strong>Shipping</strong> resource to manage settings for the site shipping information, such as origin address
                    information, carrier shipping methods, shipping rate providers, and regions available for shipping.</p>
            </div>
  title: Site Settings
  version: 0.0.1
servers:
  - description: Kibo Base URL
    url: '{baseUrl}/api'
    variables:
      baseUrl:
        default: https://t1000000.sb.usc1.gcp.kibocommerce.com
        description: Base URL
security:
  - bearerAuth: []
paths:
  /commerce/settings/checkout:
    get:
      tags:
        - CheckoutSettings
      summary: Get Checkout Settings
      description: >-
        Retrieves all checkout settings defined for the site: Payment settings,
        such as the payment gateway ID and credentials,supported credit
        cards,Customer Checkout settings whether login is required and any
        custom attributes; and Order Processing settings, such as when payment
        is authorized and captured, and any custom attributes.
      parameters:
        - description: limits which fields are returned in the response body
          in: query
          name: responseFields
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CheckoutSettings'
            text/json:
              schema:
                $ref: '#/components/schemas/CheckoutSettings'
            text/plain:
              schema:
                $ref: '#/components/schemas/CheckoutSettings'
          description: OK
components:
  schemas:
    CheckoutSettings:
      description: >-
        Checkout and payment settings defined for this site. Can set which
        payment gateway to use, whether a shopper is required to login to place
        an order,

        when credit cards are authorized and charged (when the order is placed
        or shipped), and, in the future, 

        whether the checkout page displays an option for shoppers to receive
        your email marketing campaigns.
      properties:
        customerCheckoutSettings:
          $ref: '#/components/schemas/CustomerCheckoutSettings'
        orderProcessingSettings:
          $ref: '#/components/schemas/OrderProcessingSettings'
        paymentSettings:
          $ref: '#/components/schemas/PaymentSettings'
      type: object
    CustomerCheckoutSettings:
      description: >-
        Checkout requirements for customers, for example, whether they must
        login before purchasing from your store. 

        Other customized checkout requirements can be defined.
      properties:
        auditInfo:
          $ref: '#/components/schemas/AdminUserAuditInfo'
        customerCheckoutType:
          description: >-
            Checkout login setting. Value can be either "LoginOptional," where
            shoppers are prompted to sign in

            but are not required to do so, or "LoginRequired," where shopppers
            must login before purchasing.
          nullable: true
          type: string
      type: object
    OrderProcessingSettings:
      description: >-
        Order processing (credit card payment authorization) setting defined for
        this site. 

        Can choose when the shopper’s credit card is authorized and charged.
        Possibilities include, "authorize and charge the shopper's credit card
        for the full 

        order amount when the order is placed," "authorize the shopper's credit
        card for the full amount when the order is placed and charge the credit
        card when the order is shipped," or 

        "authorize and charge the shopper's credit card for the full amount when
        the order is shipped."
      properties:
        abandonedOrderThresholdInMinutes:
          description: >-
            Abandoned Order Threshold in minutes indicates the number of minutes
            until a pending order is considered abandoned.
          format: int32
          nullable: true
          type: integer
        auditInfo:
          $ref: '#/components/schemas/AdminUserAuditInfo'
        giftCardProcessingType:
          description: >-
            Gift card payment authorization setting. Options can be authorize
            and charge the shopper's credit card when the order is placed,
            "AuthorizeAndCaptureOnOrderPlacement," 

            authorize the shopper's gift card when the order is placed and
            charge the gift card when it is shipped,
            "AuthorizeOnOrderPlacementAndCaptureOnOrderShipment," 

            or authorize and charge the shopper's gift card for the full amount
            when the order is shipped, "AuthorizeAndCaptureOnOrderShipment."
          nullable: true
          type: string
        giftCardRefundCreditProcessingType:
          description: GiftCrd Refund/Credit flow, wither to existing or new giftcard
          nullable: true
          type: string
        paymentProcessingFlowType:
          description: >-
            Credit card payment authorization setting. Options can be authorize
            and charge the shopper's credit card when the order is placed,
            "AuthorizeAndCaptureOnOrderPlacement," 

            authorize the shopper's credit card when the order is placed and
            charge the credit card when the shipped,
            "AuthorizeOnOrderPlacementAndCaptureOnOrderShipment," 

            or authorize and charge the shopper's credit card for the full
            amount when the order is shipped,
            "AuthorizeAndCaptureOnOrderShipment."
          nullable: true
          type: string
        thirdPartyPaymentSettings:
          description: >-
            Order processing settings for Third party payments

            Ex- ApplePay using
            AuthorizeOnOrderPlacementAndCaptureOnOrderShipment for processing
            orders
          items:
            $ref: '#/components/schemas/ThirdPartyPaymentSetting'
          nullable: true
          type: array
        useOverridePriceToCalculateDiscounts:
          description: Use the override price on products to calculate discounts
          type: boolean
      type: object
    PaymentSettings:
      description: >-
        Payment gateway settings defined for this site. A payment gateway is an
        e-commerce application service provider that authorizes 

        payments for e-businesses and online retailers. You can define multiple
        payment gateway settings but only one is active at a time. 

        Authorize.net is the only payment gateway supported currently.
      properties:
        auditInfo:
          $ref: '#/components/schemas/AdminUserAuditInfo'
        externalPaymentWorkflowDefinitions:
          items:
            $ref: '#/components/schemas/ExternalPaymentWorkflowDefinition'
          nullable: true
          type: array
        gateways:
          items:
            $ref: '#/components/schemas/Gateway'
          nullable: true
          type: array
        jobSettings:
          $ref: '#/components/schemas/OrderJobSettings'
        payByMail:
          type: boolean
        paymentRanking:
          nullable: true
          type: string
        purchaseOrder:
          $ref: '#/components/schemas/PurchaseOrderPaymentDefinition'
        refundRanking:
          nullable: true
          type: string
      type: object
    AdminUserAuditInfo:
      properties:
        createBy:
          nullable: true
          type: string
        createDate:
          format: date-time
          nullable: true
          type: string
        updateBy:
          nullable: true
          type: string
        updateDate:
          format: date-time
          nullable: true
          type: string
      type: object
    ThirdPartyPaymentSetting:
      properties:
        paymentProcessingFlowType:
          nullable: true
          type: string
        type:
          nullable: true
          type: string
      type: object
    ExternalPaymentWorkflowDefinition:
      description: >-
        This class describes credentials and enablement for the various
        third-party payment workflows that we will integrate with.

        Examples include Paypal Express, Amazon Payments, Google Wallet, etc.
      properties:
        credentials:
          items:
            $ref: '#/components/schemas/ThirdPartyCredentialField'
          nullable: true
          type: array
        description:
          description: >-
            Information about this definition for display purposes in the
            'Payment and Checkout Settings'

            admin ui.  This field may contain valid html tags
          nullable: true
          type: string
        fullyQualifiedName:
          nullable: true
          type: string
        isEnabled:
          type: boolean
        isLegacy:
          description: |-
            Indicates if this is a legacy implementation using ARC only
            or using the new extensible implementation.
          nullable: true
          type: boolean
        name:
          description: Should be one of Contracts.Constants.ThirdPartyWorkflowNames.
          nullable: true
          type: string
        namespace:
          nullable: true
          type: string
      type: object
    Gateway:
      properties:
        areGatewayCredentialFieldsSet:
          description: >-
            Returns true if Gateway CredentialsField is set. For security
            purposes, Gateway subresource CredentialFields will not be returned.
          type: boolean
        gatewayAccount:
          $ref: '#/components/schemas/GatewayAccount'
        gatewayDefinition:
          $ref: '#/components/schemas/GatewayDefinition'
        siteGatewaySupportedCards:
          description: Which credit cards the Merchant supports
          items:
            $ref: '#/components/schemas/SiteGatewaySupportedCard'
          nullable: true
          type: array
        supportedCards:
          description: Which credit cards the Merchant supports
          items:
            type: string
          nullable: true
          type: array
      type: object
    OrderJobSettings:
      description: Contains settings for the auto-capture payment feature.
      properties:
        autoCaptureJob:
          $ref: '#/components/schemas/AutoCaptureJob'
        forceCaptureJob:
          $ref: '#/components/schemas/ForceCaptureJob'
      type: object
    PurchaseOrderPaymentDefinition:
      properties:
        allowSplitPayment:
          description: >-
            Indicates whether another payment can be used with the purchase
            order
          type: boolean
        customFields:
          description: ''
          items:
            $ref: '#/components/schemas/SiteSettingsPurchaseOrderCustomField'
          nullable: true
          type: array
        isEnabled:
          description: Is purchase order payment enabled
          type: boolean
        paymentTerms:
          description: Allowed net terms
          items:
            $ref: '#/components/schemas/SiteSettingsPurchaseOrderPaymentTerm'
          nullable: true
          type: array
      type: object
    ThirdPartyCredentialField:
      description: Describes the name and value of a third party credential field.
      properties:
        apiName:
          description: The name of this credential that should be used for web requests.
          nullable: true
          type: string
        displayName:
          description: The displayable name of this credential field
          nullable: true
          type: string
        inputType:
          description: The input field type for the value.
          nullable: true
          type: string
        isSensitive:
          description: the value holds sensitive information.
          nullable: true
          type: boolean
        value:
          description: The value for this credential that should be used for web requests.
          nullable: true
          type: string
        vocabularyValues:
          items:
            $ref: '#/components/schemas/VocabularyValue'
          nullable: true
          type: array
      type: object
    GatewayAccount:
      properties:
        binPatterns:
          items:
            type: string
          nullable: true
          type: array
        countryCode:
          nullable: true
          type: string
        credentialFields:
          items:
            $ref: '#/components/schemas/GatewayCredentialFieldValue'
          nullable: true
          type: array
        gatewayDefinitionId:
          nullable: true
          type: string
        id:
          nullable: true
          type: string
        isActive:
          type: boolean
        name:
          nullable: true
          type: string
      type: object
    GatewayDefinition:
      properties:
        administationUi:
          items:
            type: object
          nullable: true
          type: array
        countryCode:
          nullable: true
          type: string
        credentialDefinitions:
          items:
            $ref: '#/components/schemas/GatewayCredentialFieldDefinition'
          nullable: true
          type: array
        features:
          items:
            type: string
          nullable: true
          type: array
        id:
          nullable: true
          type: string
        integrationImplTypeName:
          nullable: true
          type: string
        name:
          nullable: true
          type: string
        preAuthorizeDefinition:
          $ref: '#/components/schemas/PreAuthorizeDefinition'
        prodServiceURL:
          nullable: true
          type: string
        supportedCards:
          items:
            $ref: '#/components/schemas/SupportedCard'
          nullable: true
          type: array
        testServiceURL:
          nullable: true
          type: string
      type: object
    SiteGatewaySupportedCard:
      properties:
        cardTypeId:
          nullable: true
          type: string
        gatewayAccountId:
          nullable: true
          type: string
        paymentType:
          nullable: true
          type: string
        processingGatewayAccountId:
          nullable: true
          type: string
      type: object
    AutoCaptureJob:
      description: Contains settings for the auto-capture payment feature.
      properties:
        flexibleCapture:
          $ref: '#/components/schemas/FlexibleCapture'
        forceCaptureOnFirstCapture:
          description: >-
            Specifies whether all available funds should be collected once any
            shipment is ready for capture.
          type: boolean
        interval:
          description: How often this job should run in minutes.
          format: int32
          type: integer
        isEnabled:
          description: Specifies whether this job should run.
          type: boolean
      type: object
    ForceCaptureJob:
      description: >-
        Contains settings for when payments should be auto-captured regardless
        of shipment status.
      properties:
        captureAfterDays:
          format: int32
          type: integer
        interval:
          description: How often this job should run in minutes.
          format: int32
          type: integer
        isEnabled:
          description: Specifies whether this job should run.
          type: boolean
      type: object
    SiteSettingsPurchaseOrderCustomField:
      properties:
        code:
          description: Unique code/name for memo field
          nullable: true
          type: string
        isEnabled:
          description: Whether this memo field is enabled
          type: boolean
        isRequired:
          description: >-
            Whether this memo field is mandatory to be filled in when placing an
            order
          type: boolean
        label:
          description: Memo field label that appers on the store front
          nullable: true
          type: string
        sequenceNumber:
          description: Sequence Number
          format: int32
          type: integer
      type: object
    SiteSettingsPurchaseOrderPaymentTerm:
      properties:
        code:
          description: A unique code for purchase order payment term
          nullable: true
          type: string
        description:
          description: Value of the net term
          nullable: true
          type: string
        sequenceNumber:
          description: Sequence Number
          format: int32
          type: integer
      type: object
    VocabularyValue:
      properties:
        contents:
          items:
            $ref: '#/components/schemas/LocalizedContent'
          nullable: true
          type: array
        key:
          nullable: true
          type: string
      type: object
    GatewayCredentialFieldValue:
      properties:
        isValueSet:
          type: boolean
        name:
          nullable: true
          type: string
        value:
          nullable: true
          type: string
      type: object
    GatewayCredentialFieldDefinition:
      properties:
        adminDisplayOrder:
          format: int32
          type: integer
        displayName:
          nullable: true
          type: string
        isPublic:
          type: boolean
        name:
          nullable: true
          type: string
      type: object
    PreAuthorizeDefinition:
      properties:
        id:
          format: int32
          type: integer
        preAuthorizeProdUrl:
          nullable: true
          type: string
        preAuthorizeTestUrl:
          nullable: true
          type: string
        type:
          $ref: '#/components/schemas/PreAuthorizeTransactionTypeDataContract'
      type: object
    SupportedCard:
      properties:
        friendlyName:
          nullable: true
          type: string
        paymentType:
          nullable: true
          type: string
        type:
          nullable: true
          type: string
      type: object
    FlexibleCapture:
      description: >-
        Contains settings specifying whether the auto-capture payment feature
        should consider pre-fulfilled shipments.
      properties:
        bopisFlow:
          $ref: '#/components/schemas/FlexibleCaptureFlow'
        deliveryFlow:
          $ref: '#/components/schemas/FlexibleCaptureFlow'
        sthFlow:
          $ref: '#/components/schemas/FlexibleCaptureFlow'
      type: object
    LocalizedContent:
      properties:
        localeCode:
          nullable: true
          type: string
        value:
          nullable: true
          type: string
      type: object
    PreAuthorizeTransactionTypeDataContract:
      properties:
        description:
          nullable: true
          type: string
        id:
          format: int32
          type: integer
        type:
          nullable: true
          type: string
      type: object
    FlexibleCaptureFlow:
      description: Specifies a pre-fulfilled shipment state that is eligible for capture.
      properties:
        captureBy:
          description: Look at the `ShipmentState` or the `ShipmentWorkflow`.
          nullable: true
          type: string
        captureOn:
          description: >-
            Which shipment states or workflow statuses are considered eligible
            for capture.
          items:
            type: string
          nullable: true
          type: array
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      description: JWT Authorization header using the Bearer scheme.
      scheme: bearer
      type: http

````