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

# Niobi create payment-link

> Niobi create payment-link



## OpenAPI

````yaml post /api/payment-link-api/create
openapi: 3.0.0
info:
  title: Niobi API
  description: >-
    REST API for collecting payments, sending payouts, and managing
    multi-currency wallets across Africa and global corridors. All requests
    require IP whitelisting and a unique per-request HMAC SHA-256 signature.
  version: 4.0.0
servers:
  - url: https://sandbox.users.niobi.co
    description: Sandbox, Development and Testing
security: []
tags:
  - name: Niobi
    description: API Endpoints of Niobi
paths:
  /api/payment-link-api/create:
    post:
      tags:
        - payment-link
      summary: createPaymentLink
      description: >-
        This endpoint allows you to create a payment link you can use to collect
        payments from your customers. The request returns a response with the
        payment link details through the callback url provided in the API
        request body.
      operationId: niobiCreatePaymentLink
      requestBody:
        description: Create payment link.
        required: true
        content:
          application/json:
            schema:
              required:
                - business_name
              properties:
                business_name:
                  description: 'This is your business name. Example: ABC Ltd'
                  type: string
                  format: business_name
                  example: ABC Ltd
                item_name:
                  description: >-
                    This is the name of the item billed and to be paid. Example:
                    xyz
                  type: string
                  format: item_name
                  example: xyz
                callback_url:
                  description: >-
                    This is the callback url where you wish to receive the
                    response. Example: https://your-domain.com/niobi/result
                  type: string
                  format: callback_url
                  example: https://your-domain.com/niobi/result
                redirection_url:
                  description: >-
                    This is the redirection url. Example:
                    https://your-domain.com/niobi/result
                  type: string
                  format: redirection_url
                  example: https://your-domain.com/niobi/result
                logo:
                  description: >-
                    This is brand logo. Use the base64 format to upload a file
                    of maximum 2MB size.
                  type: string
                  format: logo
                  example: image.png
                amount:
                  description: >-
                    This is the amount of money to be paid by your customer. It
                    should be in unit case i.e. *100 (e.g. Kes 10 should be
                    input as Kes 1000)
                  type: integer
                  format: amount
                  example: integer
                country_id:
                  description: >-
                    This is integer value. You can get country list from Niobi
                    get-countries API
                  type: integer
                  format: integer
                currency:
                  description: >-
                    This is the currency in which the payment is to be made.
                    Example: KES
                  type: string
                  format: string
                correspondent:
                  description: >-
                    This is the correspondent to be used for the payment.
                    Example: MTM_MOMO_UGA
                  type: string
                  format: string
              type: object
      responses:
        '201':
          description: Ok.
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: 'true'
                  message:
                    type: string
                    example: >-
                      Verification token was sent to your mobile number. Kindly
                      verify to proceed with payment
                  data:
                    properties:
                      MerchantRequestID:
                        type: string
                        example: 1234-123456789-1
                      CheckoutRequestID:
                        type: string
                        example: ab_XY_*******************
                      ResponseCode:
                        type: string
                        example: '0'
                      ResponseDescription:
                        type: string
                        example: Success. Request accepted for processing
                      CustomerMessage:
                        type: string
                        example: Success. Request accepted for processing
                    type: object
                type: object
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: 'false'
                  message:
                    type: string
                    example: message
                type: object
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: 'false'
                  message:
                    type: string
                    example: message
                type: object
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: 'false'
                  message:
                    type: string
                    example: message
                type: object
        '404':
          description: Resource Not Found
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                properties:
                  success:
                    type: boolean
                    example: 'false'
                  message:
                    type: string
                    example: message
                type: object
        '501':
          description: Not Implemented
        '503':
          description: Service Unavailable
      security:
        - apiAuth: []
components:
  securitySchemes:
    apiAuth:
      type: apiKey
      description: Enter token in format (Bearer <token>)
      name: Authorization
      in: header

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.