Bot Create Order

Introduction

This interface can be used when accessing Crypto Payment on telegram. ACH returns a web url and pulls up a page for user payment.

Regarding telegram bot, three usage modes are provided, depending on which front-end the merchant pulls up the payment page.

  1. Browser mode: The merchant pulls up the weburl in the browser, and the payment page will be opened in the browser. After payment, it will jump to the redirectURL uploaded by the merchant

  2. MINIAPP mode: The merchant pulls up the weburl in the miniapp, and the payment page will be embedded in the miniapp. The pop-up window will be closed after the payment is successful.(No need to uploaded redirectURL)

  3. Bot mode: The merchant pulls up the ACH's bot, and jumps back to the merchant's bot after the payment is successful.

API Description

Request Method:POST

Request Path:/open/api/tg/payment/V2

Request Parameters

Body Parameters

Parameter

Sign

Mandatory

Type

Length

Remarks

appId

Y

Y

string

64

AppId is uniqle for merchant

merchantOrderNo

Y

Y

string

64

Customer transaction ID

orderAmount

Y

Y

string

64

Order amount (amount unit: dollar)

payCurrency

Y

Y

string

64

Currency of payment (EUR / USD)

userId

Y

Y

string

128

UserId is uniqle for user (email / phone number)

paymentTokens

Y

N

string

128

  1. Specify payment token, multiple tokens can be transferred
  2. After transfer, users can only use the listed tokens for payment
  3. Must be included in the merchant configuration token table
  4. Will work on both coin payment and exchange
    Check on supported token list

redirectURL

N

N

string

512

The redirection address after the successful purchase

callbackURL

N

N

string

512

The address receiving order webhook

customParam

N

N

string

512

Merchant custom parameters

expiredTime

N

N

string

32

Time of expire (no more than 172800 second)
Example:if the order expires in 1 hour, please upload 3600.

payType

N

N

string

32

Type of payment
Check on pay type

paymentNetworks

N

N

string

32

Specify payment network(separated by comma)
Check on supported token list

orderModel

N

N

string

32

Order mode (ORDER/RECHARGE) capital letter required

ORDER: order mode order would related to order amount strictly, order fails when user payment amount lower than order amount.
RECHARGE: recharge mode order would count as success when received user token.And mark the payment amount as final result.

paymentExchange

Y

N

string

512

Payment method require configuration exchange method/ wallet method.
Specify the exchange/ wallet, multiple transfers are acceptable. Users can only use the specified exchange/wallet to pay under the exchange payment/wallet payment method by sending this parameter.
Check on Exchange codes and Wallet codes

tgModel

N

N

string

32

Telegram front-end display mode: BROWSER/MINIAPP/BOT

“customParam”: Extension parameter (required when tgModel is set to BOT)

ParameterSignMandatoryTypeRemarks
botNameNNstringbot user name
chatIdNNstringuser tg chatId
orderDetailNNstringOrder description

Payment Methods

Payment MethodPayment Method Code
QR Code PaymentWALLET
Binance PayBINANCE_PAY
ExchangeEXCHANGE
Wallet PaymentWALLET_PAY

Exchange Codes

ExchangeCode
Kraken16f021b0-f220-4bbb-aa3b-82d423301957
Paxos2fdd678d-8ece-49f5-992c-a1d7c4367833
Bybit3b8d8911-b2c0-4c1a-9127-675653c21960
Coinbase47624467-e52e-4938-a41a-7926b6c27acf
Robinhood6e192ebb-a073-4055-bbd7-d644539c9a20
Binance9226e5c2-ebc3-4fdd-94f6-ed52cdce1420

Wallet Codes

WalletCode
Metamask34aeb688-decb-485f-9d80-b66466783394
Trust Wallet7f4307ea-58c6-4678-9eb2-fec205de5401
Coinbase Wallet6132432e-d59c-4555-9844-cea0ce600ba3
Uniswap Wallet58c89cae-b2ff-4176-85a3-1d1f7795cbe0
Blockchain Walletd22f63a1-50c0-4439-961c-870fc430c979
Bitcoin.com Walletf4b147b5-d166-4e6e-b4c1-e59d401cde11
Crypto.com Wallet Primee16f1dc8-7577-4170-a67f-5ebb266e410e
imToken7f523342-0bc6-4465-a035-bb4d2ed693ed
Rainbow8a60d227-2825-4158-b14b-3c8443a2b681

Payment Currency

CurrencyRegularExample
USD2 non-zero decimal places after the decimal point100.12
EUR2 non-zero decimal places after the decimal point100.12
HKD2 non-zero decimal places after the decimal point100.12
IDRinteger1000
THBinteger1000
VNDinteger1000
Token Name(USDT)The token used for unit configured, 8 non-zero decimal places after the decimal point1.12345678

Telegram Front-end Display Mode

Mode

Name

Difference of WebURL

Difference of RedirectURL

BROWSER

Browser Mode

webUrl payment http address

redirectURL:
Redirect to Merchant address after payment completed

MINIAPP

Pop-up mode

webUrl payment http address

redirectURL:
Directly close the pop-up

BOT

Jump to payment bot mode

webUrl payment bot address

redirectURL:
Redirect to Merchant bot address after payment completed

Request Parameter Example

{
    "appId": "6fdbaac2********5ad705e9293",
    "callbackURL": "https://crypto-payment-sbx.alchemy.cc/crypto/bot/cpCallback",
    "customParam": "{\"botName\":\"ABCDCryptoPaymentTestBot\",\"orderDetail\":\"ABDC Test BAG 🎒\",\"chatId\":\"68*****61\"}",
    "expiredTime": "999999",
    "merchantOrderNo": "17243134568514",
    "orderAmount": "10",
    "orderModel": "ORDER",
    "payCurrency": "USD",
    "sign": "TEST000001",
    "tgModel": "MINIAPP",
    "userId": "51*****[email protected]"
}

Response Parameters

Body Parameters

ParameterTypeDetails
successbooleanSuccess
errorbooleanError
codelongResponse code
msgstringResponse message
traceIdstringTrace id
modelobjectResponse details
└─orderNostringOrder number
└─webUrlstringCheckout url

Response Parameter Example

{
    "code": "0",
    "model": {
        "orderNo": "300217243809185440066",
        "webUrl": "https://sbx-crypto-payment.alchemypay.org?orderNum=300217243809185440066"
    },
    "msg": "success",
    "traceId": "66c7f6f6f7e8c1827f4fe27905f96546"
}