BillDesk Guest Checkout (AltID) API

The Guest Checkout (AltID) API from BillDesk — 1 operation(s) for guest checkout (altid).

Operations 1

POST /payments/ve1_2/altid/get Fetch AltID #

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-additional-info-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-udf-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-customer-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-payment-object-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-payment-object-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-customer-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-objectid-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-mercid-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-currency-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-device-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-mandate-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-cardaccount-in-txn-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-pay-using-altid-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-pay-using-issuer-token-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-pay-using-network-token-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-device-order-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-payment-method-type-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-orderid-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-bankid-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-response-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-bankaccount-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-pay-using-card-number-pan-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-network-issuer-token-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-altid-card-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-cardacc-network-issuer-token-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-cardaccid-auth-data-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-upi-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-upi-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/billdesk/refs/heads/main/json-schema/billdesk-error-desc-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/billdesk:billdesk-guest-checkout-altid-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

billdesk-guest-checkout-altid-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Tokenization Guest Checkout (AltID) API
  description: 'This explorer allows merchants to evaluate APIs that are available in the BillDesk Payment Gateway API suite.

    - Only HMAC authentication is supported.

    - All APIs are RESTful and resource oriented.

    - Servers listed are applicable for the API explorer only.'
  contact:
    name: API Support
    url: https://www.billdesk.com/helpcenter.htm
    email: support@billdesk.com
  version: '2.5'
servers:
- url: https://uat1.billdesk.com/u2
  description: UAT server
- url: https://api.billdesk.com
  description: PROD server
tags:
- name: Guest Checkout (AltID)
paths:
  /payments/ve1_2/altid/get:
    parameters: []
    post:
      summary: Fetch AltID
      operationId: retrievealtid
      responses:
        '200':
          description: OK
          headers:
            BD-Traceid:
              schema:
                type: string
              description: BD-TraceID is a unique identifier passed by the merchant to ensure request idempotency. Requests with identical BD-TraceID within a 24 hour window would fail.
            Content-Type:
              schema:
                type: string
              description: Request Content-Type to take the values application/jose
            Accept:
              schema:
                type: string
              description: Accept Response Content-Type to take the values application/jose
          content:
            application/json:
              schema:
                type: object
                x-examples:
                  Example 1:
                    objectid: altid
                    mercid: BDMERCID
                    orderid: NMprodV030308832330
                    masked_value: xxxxxxxxxxxx1784
                    altid_value: '4610151835782140'
                    altid_cryptogram: /wAAAAAASCGqcuYAmYMogp4AAAA=
                    altid_expiry_month: '02'
                    altid_expiry_year: '2027'
                    createdon: 2023-06-05T17:47:23+0530
                properties:
                  objectid:
                    $ref: '#/components/schemas/Objectid'
                  mercid:
                    $ref: '#/components/schemas/Mercid'
                  orderid:
                    $ref: '#/components/schemas/Orderid'
                  masked_value:
                    $ref: '#/components/schemas/Masked_value'
                  altid_value:
                    type: string
                    description: 'The unique alt id for the Card Number

                      provided in the request.'
                    pattern: ^[A-Za-z0-9]{1,35}$
                  altid_cryptogram:
                    type: string
                    description: Alt id cyptogram
                    pattern: ^[a-zA-Z0-9\\/\\!@#\\$%\\^&\\*\\(\\)\\{\\}_\\+\\=\\|:”;’,\\.~`\\-\\\\]{1,256}$
                  altid_expiry_month:
                    type: string
                    description: alt id expiry month
                    example: '02'
                  altid_expiry_year:
                    type: string
                    description: alt id expiry year
                    example: '2029'
                  request_date:
                    type: string
                    description: Request initiation timestamp in YYYY-MM-DDThh:mm:ssTZD format
              examples:
                Success:
                  value:
                    objectid: altid
                    mercid: BDMERCID
                    orderid: NMprodV030308832330
                    masked_value: xxxxxxxxxxxx1784
                    altid_value: '4610151835782140'
                    altid_cryptogram: /wAAAAAASCGqcuYAmYMogp4AAAA=
                    altid_expiry_month: '02'
                    altid_expiry_year: '2027'
                    request_date: '2023-03-14T15:14:39+05:30'
                Failure:
                  value:
                    status: 422
                    error_type: invalid_data_error
                    error_code: CRIDE0021
                    message: Invalid card.number
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error-object'
              examples:
                Forbidden:
                  $ref: '#/components/examples/403-error'
          headers:
            BD-Traceid:
              schema:
                type: string
              description: BD-TraceID is a unique identifier passed by the merchant to ensure request idempotency. Requests with identical BD-TraceID within a 24 hour window would fail.
            Content-Type:
              schema:
                type: string
              description: Request Content-Type to take the values application/jose
            Accept:
              schema:
                type: string
              description: Accept Response Content-Type to take the values application/jose
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error-object'
              examples:
                Internal Server Error:
                  $ref: '#/components/examples/500-error'
          headers:
            BD-Traceid:
              schema:
                type: string
              description: BD-TraceID is a unique identifier passed by the merchant to ensure request idempotency. Requests with identical BD-TraceID within a 24 hour window would fail.
            Content-Type:
              schema:
                type: string
              description: Request Content-Type to take the values application/jose
            Accept:
              schema:
                type: string
              description: Accept Response Content-Type to take the values application/jose
        default:
          description: Any bad or invalid request will lead to following error object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error-object'
              examples:
                Invalid merchant config:
                  $ref: '#/components/examples/422-Invalid-merchant-config'
          headers:
            BD-Traceid:
              schema:
                type: string
              description: BD-TraceID is a unique identifier passed by the merchant to ensure request idempotency. Requests with identical BD-TraceID within a 24 hour window would fail.
            Content-Type:
              schema:
                type: string
              description: Request Content-Type to take the values application/jose
            Accept:
              schema:
                type: string
              description: Accept Response Content-Type to take the values application/jose
      description: This API is used to retrieve the AltID value from network
      parameters:
      - $ref: '#/components/parameters/Payments_BdTraceId'
      - $ref: '#/components/parameters/Payments_BdTimeStamp'
      - $ref: '#/components/parameters/Payments_Content-Type'
      - $ref: '#/components/parameters/Payments_Accept'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              x-examples:
                Example 1:
                  mercid: BDMERCID
                  orderid: NMprodV030308832331
                  amount: '1.00'
                  currency: '356'
                  device:
                    ip: ''
                    init_channel: ''
                    user_agent: ''
                  card:
                    number: 4xx0211526891xxx1
                    expiry_month: '02'
                    expiry_year: '2027'
                    holder_name: TestAuthFlow
                    cvv: '123'
              properties:
                mercid:
                  $ref: '#/components/schemas/Mercid'
                orderid:
                  $ref: '#/components/schemas/Orderid'
                amount:
                  $ref: '#/components/schemas/Amount'
                currency:
                  $ref: '#/components/schemas/Currency'
                device:
                  type: object
                  required:
                  - ip
                  - init_channel
                  properties:
                    ip:
                      type: string
                      description: Customer’s IP address
                      example: 123.0.0.1
                    init_channel:
                      type: string
                      enum:
                      - internet
                      - app
                      - kiosk
                      description: Initiating channel,accepted values are internet,app or kiosk
                    user_agent:
                      type: string
                      description: 'Exact content of the HTTP user-agent header\n\nNote: If the total length of the User-Agent sent by the browser exceeds 2048 characters, truncate the excess portion'
                      pattern: =^[A-Za-z0-9\\\\_\\\\:\\\\-\\\\,\\\\;\\\\/\\\\)\\\\(\\\\.\\\\s\\\\+\\\\[\\\\]\\\\=@]{10,255}$
                      example: 'Mozilla/5.0(WindowsNT10.0;WOW64;rv: 51.0)Gecko/20100101Firefox/51.0'
                card:
                  $ref: '#/components/schemas/Altid_card_request'
                rupay_auth_ref_no:
                  $ref: '#/components/schemas/Rupay_auth_ref_no'
              required:
              - mercid
              - orderid
              - amount
              - currency
              - device
            examples:
              For V/M/D/A cards:
                value:
                  mercid: BDMERCID
                  orderid: NMprodV030308832331
                  amount: '1.00'
                  currency: '356'
                  device:
                    ip: 124.124.124.124
                    init_channel: internet
                    user_agent: 'Mozilla/5.0(WindowsNT10.0;WOW64;rv: 51.0)Gecko/20100101Firefox/51.0'
                  card:
                    number: '40002115268910001'
                    expiry_month: '02'
                    expiry_year: '2027'
                    holder_name: TestAuthFlow
                    cvv: '123'
              For Rupay Cards:
                value:
                  mercid: BDMERCID
                  orderid: NRGALT00021
                  amount: '1.00'
                  currency: '356'
                  device:
                    ip: 124.124.124.124
                    init_channel: internet
                    user_agent: 'Mozilla/5.0(WindowsNT10.0;WOW64;rv: 51.0)Gecko/20100101Firefox/51.0'
                  card:
                    number: '6071489876543212'
                    expiry_month: '12'
                    expiry_year: '2028'
                    holder_name: TestAuthFlow
                    cvv: '123'
                  rupay_auth_ref_no: '992557706215080424440000414458'
      tags:
      - Guest Checkout (AltID)
components:
  parameters:
    Payments_Accept:
      name: Accept
      in: header
      required: true
      schema:
        type: string
        example: application/jose
      description: Accept Response Content-Type to take the values application/jose
    Payments_Content-Type:
      name: Content-Type
      in: header
      required: true
      schema:
        type: string
        example: application/json
      description: Request Content-Type to take the values application/jose
    Payments_BdTimeStamp:
      in: header
      name: BD-Timestamp
      description: Request timestamp to identify date and time of origin of request. Example, a value of BD-Timestamp 20210113180403 identifies the request to have originated on 13th January 2021 at 06:04:03 PM.
      required: true
      schema:
        type: string
        example: '20201203182838'
    Payments_BdTraceId:
      in: header
      name: BD-Traceid
      description: BD-TraceID is a unique identifier passed by the merchant to ensure request idempotency. Requests with identical BD-TraceID within a 24 hour window would fail.
      required: true
      schema:
        type: string
        example: '20201203182838'
  examples:
    422-Invalid-merchant-config:
      value:
        status: 422
        error_type: api_validation_error
        error_code: GNAVE0001
        message: Incorrect merchant configuration
    500-error:
      value:
        status: 500
        error_type: api_processing_error
        error_code: AUAPE0001
        message: Internal server error
    403-error:
      value:
        status: 403
        error_type: inaccessable_resource_error
        error_code: GNIAE0002
        message: Access forbidden
  schemas:
    Error-object:
      type: object
      properties:
        status:
          type: integer
          description: This will be same as HTTP response code
        error_type:
          type: string
          description: This indicates of the category of errors that could be encountered, for e.g. validation_error, api_connection_error, etc.
        error_code:
          type: string
          description: Under the error_type, there could be different error_codes that could be returned depending upon the API and the underlying interaction
        message:
          type: string
          description: More details as a description for the error_code
    Mercid:
      title: mercid
      x-stoplight:
        id: 43ns25lu1fyuc
      type: string
      pattern: ^[A-Za-z0-9]{1,10}$
      example: BDMERCID
      description: Unique identifier as defined by BillDesk for each merchant
    Orderid:
      title: orderid
      x-stoplight:
        id: lmwrwf7xn6wq8
      type: string
      description: Unique ID generated by the merchant for each request
      pattern: ^[-/~A-Za-z0-9\_ \:.,#@!\\*\\+]{1,120}$
      example: TEST0000009005
    Currency:
      title: currency
      x-stoplight:
        id: 1ehjh4f7vidz7
      type: string
      description: ISO currency of the transaction amount, for INR this value will be 356
    Amount:
      title: amount
      x-stoplight:
        id: s5xd8bwxp2orm
      type: string
      pattern: ^([1-9]{1}[0-9]{0,7}(\.[0-9]{1,2})?)$
      example: '299.28'
      description: Transaction amount in two decimals, eg. 299.28
    Altid_card_request:
      type: object
      x-examples:
        Example 1:
          number: 4xx0211526891xxx1
          expiry_month: '02'
          expiry_year: '2027'
          holder_name: TestAuthFlow
          cvv: '123'
      properties:
        number:
          type: string
          description: 'Card number '
          example: '4242420000001234'
          pattern: ^[0-9]{16}$
        'expiry_month ':
          type: string
          maxLength: 2
          example: '02'
          description: Card expiry month in MM format
        expiry_year:
          type: string
          description: Card expiry year in YYYY format
          maxLength: 4
          example: '2029'
        cvv:
          type: string
          description: 'Card cvv value '
          maxLength: 3
          example: '123'
        holder_name:
          type: string
          description: Cardholder name
          example: John Doe
          pattern: ^[A-Za-z0-9\\s\\.'\\-\\~\\@\\_]{1,120}$
      required:
      - number
      - 'expiry_month '
      - expiry_year
    Objectid:
      title: objectid
      x-stoplight:
        id: bbwm8bhhbqd4r
      type: string
      description: 'String representing the object''s type. Objects of the same type share the same value. '
      enum:
      - transaction
      - authentication
      - mandate
      - invoice
      - cardaccount
      - validatevpa
      - dispute
      - settlement
      - altid
      - mandate_token
      - accountvalidation
      - refund
    Masked_value:
      title: masked_value
      x-stoplight:
        id: r3wddilt5cyy4
      type: string
      description: Masked card number, with the last four digits
      example: xxxxxxxxxxxx1001
    Rupay_auth_ref_no:
      title: rupay_auth_ref_no
      x-stoplight:
        id: p2pdfeb2zd0g6
      type: string
      description: Refers to the specific transaction reference provided by NPCI (for R cards)
x-stoplight:
  id: k14igufv2b1qr
x-samples-languages:
- shell
- json
- node
- java
- csharp
x-provenance:
  method: searched
  source: https://docs.billdesk.io/reference
  harvested: '2026-10-14'
  tool: harvest-readme-openapi.py
  note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
  assembled_from:
  - https://docs.billdesk.io/reference/createcardaccount.md
  - https://docs.billdesk.io/reference/deletecardaccount.md
  - https://docs.billdesk.io/reference/listcardaccount.md
  - https://docs.billdesk.io/reference/retrievealtid.md
  - https://docs.billdesk.io/reference/retrievecardaccount.md
  merge:
    pages: 5
    deduped: 57
    conflicts_kept_first: 0