GramJS

⚠️ This project is archived and no longer maintained. Development continues in teleproto, an actively maintained fork. It's largely compatible with GramJS for most projects, migration means little more than swapping the package:
npm install teleproto
See the migration guide for details.

payments.ValidateRequestedInfo

Submit requested order information for validation

Example

const { Api, TelegramClient } = require("telegram");
const { StringSession } = require("telegram/sessions");

const session = new StringSession(""); // You should put your string session here
const client = new TelegramClient(session, apiId, apiHash, {});

(async function run() {
  await client.connect(); // This assumes you have already authenticated with .start()

  const result = await client.invoke(
    new Api.payments.ValidateRequestedInfo({
      invoice: new Api.InputInvoiceMessage({
        peer: "username",
        msgId: 43,
      }),
      info: new Api.PaymentRequestedInfo({
        name: "some string here",
        phone: "some string here",
        email: "some string here",
        shippingAddress: new Api.PostAddress({
          streetLine1: "some string here",
          streetLine2: "some string here",
          city: "some string here",
          state: "some string here",
          countryIso2: "some string here",
          postCode: "some string here",
        }),
      }),
      save: true,
    })
  );
  console.log(result); // prints the result
})();
import { Api, TelegramClient } from "telegram";
import { StringSession } from "telegram/sessions";

const session = new StringSession(""); // You should put your string session here
const client = new TelegramClient(session, apiId, apiHash, {});

(async function run() {
  await client.connect(); // This assumes you have already authenticated with .start()

  const result: Api.payments.ValidatedRequestedInfo = await client.invoke(
    new Api.payments.ValidateRequestedInfo({
      invoice: new Api.InputInvoiceMessage({
        peer: "username",
        msgId: 43,
      }),
      info: new Api.PaymentRequestedInfo({
        name: "some string here",
        phone: "some string here",
        email: "some string here",
        shippingAddress: new Api.PostAddress({
          streetLine1: "some string here",
          streetLine2: "some string here",
          city: "some string here",
          state: "some string here",
          countryIso2: "some string here",
          postCode: "some string here",
        }),
      }),
      save: true,
    })
  );
  console.log(result); // prints the result
})();

Parameters

NameTypeDescription
flags#Flags, see TL conditional fields
saveflags.0?trueSave order information to re-use it for future orders
peerInputPeerPeer where the payment form was sent
msgIdintMessage ID of payment form
infoPaymentRequestedInfoRequested order information

Result

payments.ValidatedRequestedInfo

Possible errors

CodeTypeDescription
400MESSAGE_ID_INVALIDThe provided message id is invalid.

Can bots use this method?

No