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

# Bank Checkout Deposit

> Customer Completed transaction using Checkout Url

Customer completed transaction using checkout URL. This endpoint allows customers to deposit funds via bank checkout.


## OpenAPI

````yaml POST /api/v3/deposit/bank/checkout
openapi: 3.0.0
info:
  title: KOTANI PAY API PLATFORM
  description: ''
  version: '3.0'
  contact: {}
servers:
  - url: https://sandbox-api.kotanipay.com
security: []
tags: []
paths:
  /api/v3/deposit/bank/checkout:
    post:
      tags:
        - BANK DEPOSIT(checkout)
      summary: Deposit via bank checkout
      description: Customer Completed transaction using Checkout Url
      operationId: DepositBankCheckoutController_mobileMoney_api/v3
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BankDepositCheckoutDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: true
                  message:
                    type: string
                    example: Checkout Created successfully created.
                  data:
                    $ref: '#/components/schemas/BankDepositCheckoutDto'
                    type: object
        '400':
          description: ''
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: false
                  message:
                    type: string
                    example: Bad Request
                  data:
                    type: object
                    example: {}
        '401':
          description: ''
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: false
                  message:
                    type: string
                    example: Unauthorized
                  data:
                    type: object
                    example: {}
      security:
        - JWT: []
components:
  schemas:
    BankDepositCheckoutDto:
      type: object
      properties:
        fullName:
          type: string
          description: full name
          example: John Doe
        phoneNumber:
          type: string
          description: Customer Phone Number
          example: +245XXXXXXXXX
        paymentMethod:
          type: string
          enum:
            - PAYBYBANK
            - CARD
            - CAPITECPAY
          description: Payment Method
          example: PAYBYBANK
        currency:
          type: string
          description: Transaction currency
          example: ZAR
        country:
          type: string
          description: >-
            Country where the wallet is used (optional if derivable from
            currency) - Cards are accepted globally
        referenceId:
          type: string
          description: reference id
          example: 5f9b2c7b9c9d6b0017b4e6b1
        amount:
          type: number
          description: amount to deposit
          example: 10
        callbackUrl:
          type: string
          description: callback url
          example: https://example.com
        customerRedirectUrl:
          type: string
          description: customer redirect url
          example: https://example.com/success
        idNumber:
          type: string
          description: >-
            Customer national ID number (required for Capitec Pay in South
            Africa - 13 digit SA ID)
          example: '9001010000084'
        forceDefaultMethod:
          type: boolean
          description: >-
            Show only the chosen paymentMethod to the customer, where the
            provider supports it.
          example: false
      required:
        - fullName
        - paymentMethod
        - currency
        - amount
  securitySchemes:
    JWT:
      scheme: bearer
      bearerFormat: JWT
      type: http

````