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

# Create Offer

> Use this API to create offers with Cashfree from your backend



## OpenAPI

````yaml /openapi/payments/v2022-09-01.yaml post /offers
openapi: 3.0.0
info:
  version: '2022-09-01'
  title: Cashfree Payment Gateway APIs
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  contact:
    email: developers@cashfree.com
    name: API Support
    url: https://discord.com/invite/QdZkNSxXsB
  description: >-
    Cashfree's Payment Gateway APIs provide developers with a streamlined
    pathway to integrate advanced payment processing capabilities into their
    applications, platforms and websites.
servers:
  - url: https://sandbox.cashfree.com/pg
    description: Sandbox server
  - url: https://api.cashfree.com/pg
    description: Production server
security: []
tags:
  - name: Orders
    description: Collection of APIs to handle orders.
  - name: Payments
    description: Collection of APIs to handle payments.
  - name: Refunds
    description: Collection of APIs to handle refunds.
  - name: Settlements
    description: Collection of APIs to handle settlements.
  - name: Payment Links
    description: Collection of APIs to handle payment links.
  - name: Token Vault
    description: >-
      Collection of APIs to use Cashfree's token Vault. This helps you save
      cards and tokenize them in a PCI complaint manner. We support creation of
      network tokens which can be used across acquiring banks
  - name: softPOS
    description: Collection of APIs to manage softPOS' agent and order
  - name: Offers
    description: Collection of APIs to handle offers
  - name: Eligibility
    description: >-
      Collection of APIs to check eligibile entities - payment methods, offer,
      affordibility
  - name: Settlement Reconciliation
    description: Collection of APIs to handle settlements
  - name: PG Reconciliation
    description: Collection of APIs to handle reconciliation
paths:
  /offers:
    post:
      tags:
        - Offers
      summary: Create Offer
      description: Use this API to create offers with Cashfree from your backend
      operationId: PGCreateOffer
      parameters:
        - $ref: '#/components/parameters/apiVersionHeader'
        - $ref: '#/components/parameters/xRequestIDHeader'
        - $ref: '#/components/parameters/xIdempotencyKeyHeader'
      requestBody:
        $ref: '#/components/requestBodies/CreateOfferRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OfferEntity'
          headers:
            x-api-version:
              $ref: '#/components/headers/x-api-version'
            x-ratelimit-limit:
              $ref: '#/components/headers/x-ratelimit-limit'
            x-ratelimit-remaining:
              $ref: '#/components/headers/x-ratelimit-remaining'
            x-ratelimit-retry:
              $ref: '#/components/headers/x-ratelimit-retry'
            x-ratelimit-type:
              $ref: '#/components/headers/x-ratelimit-type'
            x-request-id:
              $ref: '#/components/headers/x-request-id'
            x-idempotency-key:
              $ref: '#/components/headers/x-idempotency-key'
            x-idempotency-replayed:
              $ref: '#/components/headers/x-idempotency-replayed'
        '400':
          $ref: '#/components/responses/Response400'
        '401':
          $ref: '#/components/responses/Response401'
        '404':
          $ref: '#/components/responses/Response404'
        '409':
          $ref: '#/components/responses/Response409'
        '422':
          $ref: '#/components/responses/Response422'
        '429':
          $ref: '#/components/responses/Response429'
        '500':
          $ref: '#/components/responses/Response500'
      deprecated: false
      security:
        - XClientID: []
          XClientSecret: []
        - XClientID: []
          XPartnerAPIKey: []
        - XClientID: []
          XClientSignatureHeader: []
        - XPartnerMerchantID: []
          XPartnerAPIKey: []
components:
  parameters:
    apiVersionHeader:
      in: header
      name: x-api-version
      required: true
      description: API version to be used. Format is in YYYY-MM-DD
      schema:
        type: string
        description: API version to be used
        default: '2022-09-01'
      example: '2022-09-01'
    xRequestIDHeader:
      in: header
      name: x-request-id
      description: >-
        Request id for the API call. Can be used to resolve tech issues.
        Communicate this in your tech related queries to cashfree
      required: false
      schema:
        type: string
      example: 4dfb9780-46fe-11ee-be56-0242ac120002
    xIdempotencyKeyHeader:
      in: header
      name: x-idempotency-key
      required: false
      description: >
        Idempotency works by saving the resulting status code and body of the
        first request made for any given idempotency key, regardless of whether
        it succeeded or failed. Subsequent requests with the same key return the
        same result, including 500 errors.


        Currently supported on all POST calls that uses x-client-id &
        x-client-secret. To use enable, pass x-idempotency-key in the request
        header. The value of this header must be unique to each operation you
        are trying to do. One example can be to use the same order_id that you
        pass while creating orders 
      schema:
        type: string
        format: UUID
      example: 47bf8872-46fe-11ee-be56-0242ac120002
  requestBodies:
    CreateOfferRequest:
      description: Request body to create an offer at Cashfree
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CreateOfferRequest'
          examples:
            card_offer:
              $ref: '#/components/examples/card_offer'
            net_banking_offer:
              $ref: '#/components/examples/net_banking_offer'
            emi_offer:
              $ref: '#/components/examples/no_cost_emi_offer'
  schemas:
    OfferEntity:
      title: OfferEntity
      type: object
      description: Offer entity object
      properties:
        offer_id:
          type: string
          example: d2b430fb-1afe-455a-af31-66d00377b29a
        offer_status:
          type: string
          example: active
        offer_meta:
          allOf:
            - $ref: '#/components/schemas/OfferMeta'
          example:
            $ref: '#/components/schemas/OfferMeta/example'
        offer_tnc:
          allOf:
            - $ref: '#/components/schemas/OfferTnc'
          example:
            $ref: '#/components/schemas/OfferTnc/example'
        offer_details:
          allOf:
            - $ref: '#/components/schemas/OfferDetails'
          example:
            $ref: '#/components/schemas/OfferDetails/example'
        offer_validations:
          allOf:
            - $ref: '#/components/schemas/OfferValidations'
          example:
            $ref: '#/components/schemas/OfferValidations/example'
    CreateOfferRequest:
      title: CreateOfferRequest
      description: create offer backend request object
      type: object
      properties:
        offer_meta:
          allOf:
            - $ref: '#/components/schemas/OfferMeta'
          example:
            $ref: '#/components/schemas/OfferMeta/example'
        offer_tnc:
          allOf:
            - $ref: '#/components/schemas/OfferTnc'
          example:
            $ref: '#/components/schemas/OfferTnc/example'
        offer_details:
          allOf:
            - $ref: '#/components/schemas/OfferDetails'
          example:
            $ref: '#/components/schemas/OfferDetails/example'
        offer_validations:
          allOf:
            - $ref: '#/components/schemas/OfferValidations'
          example:
            $ref: '#/components/schemas/OfferValidations/example'
      required:
        - offer_meta
        - offer_tnc
        - offer_details
        - offer_validations
    OfferMeta:
      title: OfferMeta
      type: object
      description: Offer meta details object
      example:
        offer_title: some title
        offer_description: some offer description
        offer_code: CFTESTOFFER
        offer_start_time: '2023-03-21T08:09:51Z'
        offer_end_time: '2023-03-29T08:09:51Z'
      properties:
        offer_title:
          type: string
          description: Title for the Offer.
          minLength: 3
          maxLength: 50
          example: Test Offer
        offer_description:
          type: string
          description: Description for the Offer.
          minLength: 3
          maxLength: 100
          example: Lorem ipsum dolor sit amet, consectetur adipiscing elit
        offer_code:
          type: string
          description: Unique identifier for the Offer.
          minLength: 1
          maxLength: 45
          example: CFTESTOFFER
        offer_start_time:
          type: string
          description: Start Time for the Offer
          minLength: 3
          maxLength: 20
          example: '2023-03-21T08:09:51Z'
        offer_end_time:
          type: string
          description: Expiry Time for the Offer
          example: '2023-03-29T08:09:51Z'
      required:
        - offer_title
        - offer_description
        - offer_code
        - offer_start_time
        - offer_end_time
    OfferTnc:
      title: OfferMeta
      type: object
      description: Offer terms and condition object
      example:
        offer_tnc_type: text
        offer_tnc_value: TnC for the Offer.
      properties:
        offer_tnc_type:
          type: string
          description: TnC Type for the Offer. It can be either `text` or `link`
          enum:
            - text
            - link
          minLength: 3
          maxLength: 50
          example: text
        offer_tnc_value:
          type: string
          description: TnC for the Offer.
          minLength: 3
          maxLength: 100
          example: Lorem ipsum dolor sit amet, consectetur adipiscing elit
      required:
        - offer_tnc_type
        - offer_tnc_value
    OfferDetails:
      title: OfferDetails
      description: Offer details and type
      type: object
      example:
        offer_type: DISCOUNT_AND_CASHBACK
        discount_details:
          discount_type: flat
          discount_value: '10'
          max_discount_amount: '10'
        cashback_details:
          cashback_type: percentage
          cashback_value: '20'
          max_cashback_amount: '150'
      properties:
        offer_type:
          type: string
          description: Offer Type for the Offer.
          enum:
            - DISCOUNT
            - CASHBACK
            - DISCOUNT_AND_CASHBACK
            - NO_COST_EMI
          minLength: 3
          maxLength: 50
          example: DISCOUNT_AND_CASHBACK
        discount_details:
          $ref: '#/components/schemas/DiscountDetails'
        cashback_details:
          $ref: '#/components/schemas/CashbackDetails'
      required:
        - offer_type
    OfferValidations:
      title: OfferValidations
      description: Offer validation object
      type: object
      example:
        min_amount: 10
        payment_method:
          wallet:
            issuer: paytm
        max_allowed: 2
      properties:
        min_amount:
          type: number
          description: Minimum Amount for Offer to be Applicable
          minimum: 1
          example: 1
        payment_method:
          oneOf:
            - $ref: '#/components/schemas/OfferAll'
            - $ref: '#/components/schemas/OfferCard'
            - $ref: '#/components/schemas/OfferNB'
            - $ref: '#/components/schemas/OfferWallet'
            - $ref: '#/components/schemas/OfferUPI'
            - $ref: '#/components/schemas/OfferPaylater'
            - $ref: '#/components/schemas/OfferEMI'
          example:
            wallet:
              issuer: paytm
        max_allowed:
          type: number
          description: Maximum amount of Offer that can be availed.
          minimum: 1
          example: 10
      required:
        - max_allowed
        - payment_method
    BadRequestError:
      title: BadRequestError
      description: Invalid request received from client
      example:
        message: bad URL, please check API documentation
        code: request_failed
        type: invalid_request_error
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        type:
          type: string
          enum:
            - invalid_request_error
    AuthenticationError:
      title: AuthenticationError
      description: Error if api keys are wrong
      example:
        message: authentication Failed
        code: request_failed
        type: authentication_error
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        type:
          type: string
          description: authentication_error
    ApiError404:
      title: ApiError404
      description: Error when resource requested is not found
      example:
        message: something is not found
        code: somethind_not_found
        type: invalid_request_error
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        type:
          type: string
          enum:
            - invalid_request_error
          description: invalid_request_error
    ApiError409:
      title: ApiError409
      description: duplicate request
      example:
        message: order with same id is already present
        code: order_already_exists
        type: invalid_request_error
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        type:
          type: string
          enum:
            - invalid_request_error
          description: invalid_request_error
    IdempotencyError:
      title: IdempotencyError
      description: >-
        Error when idempotency fails. Different request body with the same
        idempotent key
      example:
        message: something is not found
        code: request_invalid
        type: idempotency_error
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        type:
          type: string
          enum:
            - idempotency_error
          description: idempotency_error
    RateLimitError:
      title: RateLimitError
      description: Error when rate limit is breached for your api
      example:
        message: Too many requests from IP. Check headers
        code: request_failed
        type: rate_limit_error
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        type:
          type: string
          enum:
            - rate_limit_error
          description: rate_limit_error
    ApiError:
      title: ApiError
      description: Error at cashfree's server
      example:
        message: internal Server Error
        code: internal_error
        type: api_error
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        type:
          type: string
          enum:
            - api_error
          description: api_error
    DiscountDetails:
      title: DiscountDetails
      description: detils of the discount object of offer
      example:
        discount_type: flat
        discount_value: '10'
        max_discount_amount: '10'
      type: object
      properties:
        discount_type:
          type: string
          description: Type of discount
          enum:
            - flat
            - percentage
          minLength: 3
          maxLength: 50
        discount_value:
          type: string
          description: Value of Discount.
          minLength: 1
          maxLength: 100
        max_discount_amount:
          type: string
          description: Maximum Value of Discount allowed.
          minLength: 1
          maxLength: 100
      required:
        - discount_type
        - discount_value
        - max_discount_amount
    CashbackDetails:
      title: CashbackDetails
      description: Cashback detail boject
      example:
        cashback_type: percentage
        cashback_value: '20'
        max_cashback_amount: '150'
      type: object
      properties:
        cashback_type:
          type: string
          description: Type of discount
          enum:
            - flat
            - percentage
          minLength: 1
          maxLength: 50
        cashback_value:
          type: string
          description: Value of Discount.
          minLength: 1
          maxLength: 100
        max_cashback_amount:
          type: string
          description: Maximum Value of Cashback allowed.
          minLength: 1
          maxLength: 100
      required:
        - cashback_type
        - cashback_value
        - max_cashback_amount
    OfferAll:
      title: All Offers
      description: returns all offers
      example:
        all: {}
      type: object
      properties:
        all:
          $ref: '#/components/schemas/AllOffers'
      required:
        - all
    OfferCard:
      title: Card Offer
      description: Offers related to cards
      example:
        card:
          type:
            - cc
          bank_name: hdfc bank
          scheme_name:
            - visa
      type: object
      properties:
        card:
          title: Card Offer
          type: object
          properties:
            type:
              type: array
              items:
                $ref: '#/components/schemas/CardArray'
            bank_name:
              type: string
              description: Bank Name of Card.
              minLength: 3
              maxLength: 100
              example: hdfc bank
            scheme_name:
              type: array
              items:
                $ref: '#/components/schemas/SchemeArray'
          required:
            - type
            - bank_name
            - scheme_name
      required:
        - card
    OfferNB:
      title: Net Banking Offer
      description: Offer object ofr NetBanking
      example:
        netbanking:
          bank_name: hdfc bank
      type: object
      properties:
        netbanking:
          type: object
          properties:
            bank_name:
              type: string
              example: all
      required:
        - netbanking
    OfferWallet:
      title: Wallet Offer
      description: Offer object for wallet payment method
      example:
        app:
          issuer: paytm
      type: object
      properties:
        app:
          title: Wallet Offer
          type: object
          properties:
            provider:
              type: string
              example: paytm
      required:
        - app
    OfferUPI:
      title: UPI Offer
      description: Offer object for UPI
      example:
        upi: {}
      type: object
      properties:
        upi:
          title: UPI Offer
          type: object
      required:
        - upi
    OfferPaylater:
      title: Paylater Offer
      description: Offer object for paylater
      example:
        paylater:
          issuer: lazypay
      type: object
      properties:
        paylater:
          title: Paylater Offer
          type: object
          properties:
            provider:
              type: string
              example: simpl
      required:
        - paylater
    OfferEMI:
      title: EMI Offer
      description: EMI offer object
      type: object
      example:
        emi:
          type: cardless_emi
          issuer: hdfc bank
          tenures:
            - 3
            - 6
      properties:
        emi:
          title: EMI Offer
          type: object
          properties:
            type:
              type: string
              description: >-
                Type of emi offer. Possible values are `credit_card_emi`,
                `debit_card_emi`, `cardless_emi`
              minLength: 3
              maxLength: 100
              example: cardless_emi
            issuer:
              type: string
              description: Bank Name
              minLength: 3
              maxLength: 100
              example: hdfc bank
            tenures:
              type: array
              items:
                title: Tenure Array
                type: integer
                example: 3
          required:
            - type
            - issuer
            - tenures
      required:
        - emi
    AllOffers:
      title: All Offers
      type: object
      description: All offers applicable
    CardArray:
      title: card array
      description: short code for credit card, debit card, prepaid card
      type: string
      example: dc
    SchemeArray:
      title: Scheme array
      type: string
      example: visa
      description: array of card schemes like visa, master etc
  headers:
    x-api-version:
      schema:
        type: string
        format: YYYY-MM-DD
        enum:
          - '2022-09-01'
      description: >-
        This header has the version of the API. The current version is
        `2022-09-01`.
    x-ratelimit-limit:
      schema:
        type: integer
      example: 200
      description: Ratelimit set for your account for this API per minute
    x-ratelimit-remaining:
      schema:
        type: integer
      example: 2
      description: >-
        Rate limit remaning for your account for this API in the next minute.
        Uses sliding window
    x-ratelimit-retry:
      schema:
        type: integer
      example: 4
      description: |
        Contains number of seconds to wait if rate limit is breached
        - Is 0 if withing the limit
        - Is between 1 and 59 if breached
    x-ratelimit-type:
      schema:
        type: string
        enum:
          - app_id
          - ip
      example: ip
      description: >
        either ip or app_id

        - `ip` if making a call from the browser. True for api where you don't
        need `x-client-id` and `x-client-secret`

        - `app_id` for authenticated api calls i.e using `x-client-id` and
        `x-client-secret`
    x-request-id:
      schema:
        type: string
      example: some-req-id
      description: >-
        Request id for your api call. Is blank or null if no `x-request-id` is
        sent during the request
    x-idempotency-key:
      schema:
        type: string
      example: some-idem-id
      description: Idempotency key used during the request. Applicable for POST only
    x-idempotency-replayed:
      schema:
        type: string
        format: boolean
      example: 'true'
      description: |-
        In conjunction with `x-idempotency-key` this means
        - `true` if the response was replayed
        - `false` if the response has not been replayed
  responses:
    Response400:
      description: Bad request error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BadRequestError'
      headers:
        x-api-version:
          $ref: '#/components/headers/x-api-version'
        x-ratelimit-limit:
          $ref: '#/components/headers/x-ratelimit-limit'
        x-ratelimit-remaining:
          $ref: '#/components/headers/x-ratelimit-remaining'
        x-ratelimit-retry:
          $ref: '#/components/headers/x-ratelimit-retry'
        x-ratelimit-type:
          $ref: '#/components/headers/x-ratelimit-type'
        x-request-id:
          $ref: '#/components/headers/x-request-id'
        x-idempotency-key:
          $ref: '#/components/headers/x-idempotency-key'
        x-idempotency-replayed:
          $ref: '#/components/headers/x-idempotency-replayed'
    Response401:
      description: Authentication Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AuthenticationError'
      headers:
        x-api-version:
          $ref: '#/components/headers/x-api-version'
        x-ratelimit-limit:
          $ref: '#/components/headers/x-ratelimit-limit'
        x-ratelimit-remaining:
          $ref: '#/components/headers/x-ratelimit-remaining'
        x-ratelimit-retry:
          $ref: '#/components/headers/x-ratelimit-retry'
        x-ratelimit-type:
          $ref: '#/components/headers/x-ratelimit-type'
        x-request-id:
          $ref: '#/components/headers/x-request-id'
        x-idempotency-key:
          $ref: '#/components/headers/x-idempotency-key'
        x-idempotency-replayed:
          $ref: '#/components/headers/x-idempotency-replayed'
    Response404:
      description: Resource Not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError404'
      headers:
        x-api-version:
          $ref: '#/components/headers/x-api-version'
        x-ratelimit-limit:
          $ref: '#/components/headers/x-ratelimit-limit'
        x-ratelimit-remaining:
          $ref: '#/components/headers/x-ratelimit-remaining'
        x-ratelimit-retry:
          $ref: '#/components/headers/x-ratelimit-retry'
        x-ratelimit-type:
          $ref: '#/components/headers/x-ratelimit-type'
        x-request-id:
          $ref: '#/components/headers/x-request-id'
        x-idempotency-key:
          $ref: '#/components/headers/x-idempotency-key'
        x-idempotency-replayed:
          $ref: '#/components/headers/x-idempotency-replayed'
    Response409:
      description: Resource already present
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError409'
      headers:
        x-api-version:
          $ref: '#/components/headers/x-api-version'
        x-ratelimit-limit:
          $ref: '#/components/headers/x-ratelimit-limit'
        x-ratelimit-remaining:
          $ref: '#/components/headers/x-ratelimit-remaining'
        x-ratelimit-retry:
          $ref: '#/components/headers/x-ratelimit-retry'
        x-ratelimit-type:
          $ref: '#/components/headers/x-ratelimit-type'
        x-request-id:
          $ref: '#/components/headers/x-request-id'
        x-idempotency-key:
          $ref: '#/components/headers/x-idempotency-key'
        x-idempotency-replayed:
          $ref: '#/components/headers/x-idempotency-replayed'
    Response422:
      description: Idempotency error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IdempotencyError'
      headers:
        x-api-version:
          $ref: '#/components/headers/x-api-version'
        x-ratelimit-limit:
          $ref: '#/components/headers/x-ratelimit-limit'
        x-ratelimit-remaining:
          $ref: '#/components/headers/x-ratelimit-remaining'
        x-ratelimit-retry:
          $ref: '#/components/headers/x-ratelimit-retry'
        x-ratelimit-type:
          $ref: '#/components/headers/x-ratelimit-type'
        x-request-id:
          $ref: '#/components/headers/x-request-id'
        x-idempotency-key:
          $ref: '#/components/headers/x-idempotency-key'
        x-idempotency-replayed:
          $ref: '#/components/headers/x-idempotency-replayed'
    Response429:
      description: Rate Limit Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RateLimitError'
      headers:
        x-api-version:
          $ref: '#/components/headers/x-api-version'
        x-ratelimit-limit:
          $ref: '#/components/headers/x-ratelimit-limit'
        x-ratelimit-remaining:
          $ref: '#/components/headers/x-ratelimit-remaining'
        x-ratelimit-retry:
          $ref: '#/components/headers/x-ratelimit-retry'
        x-ratelimit-type:
          $ref: '#/components/headers/x-ratelimit-type'
        x-request-id:
          $ref: '#/components/headers/x-request-id'
        x-idempotency-key:
          $ref: '#/components/headers/x-idempotency-key'
        x-idempotency-replayed:
          $ref: '#/components/headers/x-idempotency-replayed'
    Response500:
      description: API related Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
      headers:
        x-api-version:
          $ref: '#/components/headers/x-api-version'
        x-ratelimit-limit:
          $ref: '#/components/headers/x-ratelimit-limit'
        x-ratelimit-remaining:
          $ref: '#/components/headers/x-ratelimit-remaining'
        x-ratelimit-retry:
          $ref: '#/components/headers/x-ratelimit-retry'
        x-ratelimit-type:
          $ref: '#/components/headers/x-ratelimit-type'
        x-request-id:
          $ref: '#/components/headers/x-request-id'
        x-idempotency-key:
          $ref: '#/components/headers/x-idempotency-key'
        x-idempotency-replayed:
          $ref: '#/components/headers/x-idempotency-replayed'
  examples:
    card_offer:
      summary: Create a Card Offer
      description: card offer example
      value:
        offer_meta:
          offer_title: Test Offer
          offer_description: Offer Description
          offer_code: CFTESTOFFER
          offer_start_time: '2023-03-21T08:09:51Z'
          offer_end_time: '2024-03-21T08:09:51Z'
        offer_tnc:
          offer_tnc_type: text
          offer_tnc_value: Terms and Condition of the Offer
        offer_details:
          offer_type: DISCOUNT_AND_CASHBACK
          discount_details:
            discount_type: flat
            discount_value: '10'
            max_discount_amount: '10'
          cashback_details:
            cashback_type: percentage
            cashback_value: '10'
            max_cashback_amount: '10'
        offer_validations:
          min_amount: 15
          max_allowed: 100
          payment_method:
            card:
              type:
                - cc
              bank_name: hdfc bank
              scheme_name:
                - visa
    net_banking_offer:
      summary: Create a Net Banking Offer
      description: Offer Netbanking
      value:
        offer_meta:
          offer_title: Test Offer
          offer_description: Offer Description
          offer_code: CFTESTOFFER
          offer_start_time: '2023-03-21T08:09:51Z'
          offer_end_time: '2024-03-21T08:09:51Z'
        offer_tnc:
          offer_tnc_type: text
          offer_tnc_value: Terms and Condition of the Offer
        offer_details:
          offer_type: DISCOUNT_AND_CASHBACK
          discount_details:
            discount_type: flat
            discount_value: '10'
            max_discount_amount: '10'
          cashback_details:
            cashback_type: percentage
            cashback_value: '10'
            max_cashback_amount: '10'
        offer_validations:
          min_amount: 12
          max_allowed: 100
          payment_method:
            netbanking:
              bank_name: all
    no_cost_emi_offer:
      summary: Create a No Cost EMI Offer
      description: No cost EMI
      value:
        offer_meta:
          offer_title: Test Offer
          offer_description: Offer Description
          offer_code: CFTESTOFFER
          offer_start_time: '2023-03-21T08:09:51Z'
          offer_end_time: '2024-03-21T08:09:51Z'
        offer_tnc:
          offer_tnc_type: text
          offer_tnc_value: Terms and Condition of the Offer
        offer_details:
          offer_type: NO_COST_EMI
        offer_validations:
          max_allowed: 10000
          payment_method:
            emi:
              type: cardless_emi
              issuer: hdfc bank
              tenures:
                - 3
                - 6
  securitySchemes:
    XClientID:
      type: apiKey
      in: header
      name: x-client-id
      description: >-
        Client app ID. You can find your app id in the [Merchant
        Dashboard](https://merchant.cashfree.com/auth/login/pg/developers/api-keys?env=prod).
    XClientSecret:
      type: apiKey
      in: header
      name: x-client-secret
      description: >-
        Client secret key. You can find your secret in the [Merchant
        Dashboard](https://merchant.cashfree.com/auth/login/pg/developers/api-keys?env=prod).
    XPartnerAPIKey:
      type: apiKey
      in: header
      name: x-partner-apikey
      description: >-
        If you are partner and you are making an api call on behalf of a
        merchant
    XClientSignatureHeader:
      type: apiKey
      in: header
      name: x-client-signature
      description: >-
        Use this if you do not want to pass the secret key and instead want to
        use signature
    XPartnerMerchantID:
      type: apiKey
      in: header
      name: x-partner-merchantid
      description: >-
        If you are partner use this to specify the merchant id if you don't have
        the merchant client app id

````