---
title: "Create Link"
method: POST
path: "/create"
tags: ["Payment Links"]
---

# Create Link

`POST /create`

This API will be used to create a link for the customer to make a payment and the merchant can choose the medium for dissemination of the link- Email, SMS or both.

## Headers

- `BD-Traceid` string, required
- `BD-Timestamp` string, required
- `Content-Type` string, required
- `Accept` string, required

## Request body

- object
  - `data` object
    - `mercid` string, required — Unique identifier as defined by BillDesk for each merchant
    - `merc_link_ref_no` string — Unique reference number provided by merchant
    - `flow_type` string, required — Fixed value "payment"
    - `payment_method_allowed` string — Comma separated values to define payment method allowed in the payment link. Allowed values - quickpay, card, emi, nb, upi, wallets, qr, gpay, neft_rtgs, whatsapppay, cbdc or all
    - `currency` string, required — ISO currency of the transaction amount, for INR this value will be 356
    - `payment` PaymentObject — This object is required for payment flow_type. Contains parameters pertaining to payment details.
      - `amount` string, required — Payment link amount
      - `partial_payment_allowed` boolean — To determine if partial payment is allowed on the link against the total amount used for link creation.
      - `max_payments_allowed` integer — Only applicable in case partial payment allowed is true. Maximum number of partial payments that can be processed on the same link. This can be a maximum value of 10 (successful transactions).
      - `minimum_partial_amount` string — Minimum amount that is required to be paid for every partial payment. Applicable when partial payment allowed is true. If not passed, default value will be set to 1.00
      - `avs` AvsObject — The avs object can be added to the request to initiate a payment with a third-party bank account validation. AVS is supported for the card (debit card), netbanking and upi payment methods.
        - `bankaccounts` object[] — Object that contains the details of the payment method
          - `number` string, required — Customer's bank account number
          - `ifsc` string, required — IFSC of the bank account number
          - `name` string — Name of the bank account holder
    - `customer` Customer
      - `first_name` string — Customer’s First Name
      - `last_name` string — Customer’s Last Name
      - `mobile` string — Customer’s Mobile number. This parameter is mandatory if sms is passed as true in customer_notification object.
      - `email` string — Customer’s Email address. This parameter is mandatory if email is passed as true in customer_notification object.
    - `customer_notification` CustomerNotificationRequest — Merchant can choose to send Email or SMS or both to the customer once payment link is generated.
      - `sms` boolean — If true, BillDesk sends a SMS notification on the mobile number provided in customer object
      - `email` boolean — If true, BillDesk sends an Email notification on the Email ID provided in customer object
    - `udf` object[] — User defined fields defined by merchant which will be displayed to the customer on link summary page. Maximum udf objects allowed are 7. Note: Merchant is advised to not pass customer PII information in UDF fields.
      - `sequence` integer — Sequence of the field to be shown on link summary page. If this value is 1, the field will be shown on top of the link summary page.
      - `field_label` string — Label of the field
      - `field_value` string — Value of the field
      - `hidden_flag` boolean — If true, the object will not be displayed on link summary page
    - `additional_info` AdditionalInfo — Array of 7 additional_info values that can be attached to the transaction. Note: Merchant is advised to not pass customer PII information in additional info fields.
      - `additional_info1` string
      - `additional_info2` string
      - `additional_info3` string
      - `additional_info4` string
      - `additional_info5` string
      - `additional_info6` string
      - `additional_info7` string
    - `forwarding_url` string — Merchant specific url where customer will be redirected post transaction is completed. Please note : transaction details will not be posted on this url.
    - `link_expiry_date` string — Expiry timestamp of the link. If not passed, the default expiry date is one month from the link creation date.
    - `link_title` string, required — Merchant specific title of the link which gets displayed to the customer
    - `link_desc` string — Merchant specific description of the link which gets displayed to the customer

## Response `200`

OK

- object
  - `data` object
    - `objectid` 'link' — String representing the object's type. Objects of the same type share the same value.
    - `linkid` string — Unique ID generated by BillDesk for a payment link
    - `mercid` string — Unique identifier as defined by BillDesk for each merchant
    - `merc_link_ref_no` string — Unique reference number provided by merchant
    - `createdon` string, date-time — object creation timestamp
    - `flow_type` string — Fixed value "payment"
    - `payment_method_allowed` 'all' — If not passed or if passed as null, in response it will be all
    - `currency` string — ISO currency of the transaction amount, for INR this value will be 356
    - `payment` PaymentObjectResponse — Payment object contains parameters pertaining to payment details.
      - `amount` string — Payment link amount
      - `partial_payment_allowed` boolean — To determine if partial payment is allowed on the link against the total amount used for link creation.
      - `max_payments_allowed` integer — Maximum number of partial payments that can be processed on the same link. This can be a maximum value of 10 (successful transactions). Value of 1 indicates a single payment can be collected against the link.
      - `minimum_partial_amount` string — Value equal to amount indicates a single payment can be collected against the link.
    - `customer` CustomerResponse — Customer object response. Note : PII data will be masked
      - `first_name` string — Customer’s First Name
      - `last_name` string — Customer’s Last Name
      - `mobile` string — Customer’s Mobile number
      - `email` string — Customer’s Email address
    - `customer_notification` CustomerNotification — Merchant can choose to send Email or SMS or both to the customer once payment link is generated.
      - `sms` boolean — If true, Billdesk sends a SMS notification on the mobile number provided in customer object
      - `email` boolean — If true, Billdesk sends an Email notification on the Email ID provided in customer object
    - `udf` object[] — User defined fields defined by merchant which will be displayed to the customer on link summary page. Maximum udf objects allowed are 7. Note: Merchant is advised to not pass customer PII information in UDF fields.
      - `sequence` integer — Sequence of the field to be shown on link summary page. If this value is 1, the field will be shown on top of the link summary page.
      - `field_label` string — Label of the field
      - `field_value` string — Value of the field
      - `hidden_flag` boolean — If true, the object will not be displayed on link summary page
    - `additional_info` AdditionalInfo — Array of 7 additional_info values that can be attached to the transaction. Note: Merchant is advised to not pass customer PII information in additional info fields.
      - `additional_info1` string
      - `additional_info2` string
      - `additional_info3` string
      - `additional_info4` string
      - `additional_info5` string
      - `additional_info6` string
      - `additional_info7` string
    - `forwarding_url` string — Merchant specific url where customer will be redirected post transaction is completed. Please note : transaction details will not be posted on this url.
    - `link_expiry_date` string — Expiry timestamp of the link. If not passed, the default expiry date is one month from the link creation date.
    - `link_desc` string — Merchant specific description of the link which gets displayed to the customer
    - `link` string — Payment link generated where customer must be redirected for payment
    - `link_title` string — Merchant specific title of the link which gets displayed to the customer

## Other responses

- `403` — Forbidden
- `500` — Internal Server Error
- `default` — Any bad or invalid request will lead to following error object

---

[API](https://skmtc.net/billdesk/apis/payments.md) · [All operations](https://skmtc.net/billdesk/apis/payments/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/billdesk/payments/revisions/43f021fc467f/schema)
