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

ParameterSignMandatoryTypeLengthRemarks
appIdYYstring64AppId is uniqle for merchant
merchantOrderNoYYstring64Customer transaction ID
orderAmountYYstring64Order amount (amount unit: dollar)
payCurrencyYYstring64Currency of payment (EUR / USD)
userIdYYstring128UserId is uniqle for user (email / phone number)
paymentTokensYNstring1281. 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
redirectURLNNstring512The redirection address after the successful purchase
callbackURLNNstring512The address receiving order webhook
customParamNNstring512Merchant custom parameters
expiredTimeNNstring32Time of expire (no more than 172800 second)
Example:if the order expires in 1 hour, please upload 3600.
payTypeNNstring32Type of payment
Check on pay type
paymentNetworksNNstring32Specify payment network(separated by comma)
Check on supported token list
orderModelNNstring32Order 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.
paymentExchangeYNstring512Payment 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
tgModelNNstring32Telegram 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

ModeNameDifference of WebURLDifference of RedirectURL
BROWSERBrowser ModewebUrl payment http addressredirectURL:
Redirect to Merchant address after payment completed
MINIAPPPop-up modewebUrl payment http addressredirectURL:
Directly close the pop-up
BOTJump to payment bot modewebUrl payment bot addressredirectURL:
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

Response Parameter Example

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