Tan Code

Sell function

Sell function enables customer to pay for product or service at sales system (POS software or online shop etc.) by using MonPay account. When this function called, one-time TanCode (active for 1 minute) will be delivered to customer phone via Sms. In the next step the TanCode will be passed to Sell Confirm function to confirm customer transaction.

                
$client = new http\Client;
$request = new http\Client\Request;

$request->setRequestUrl('https://api.monpay.mn/resource/partner/v1/sell');
$request->setRequestMethod('POST');

$body = new http\Message\Body;
$body->append('<request>
	<customer system="ISDN">99XXXXXX</customer>
	<amount>2</amount>
    <description>Description of your choice</description>
    <smsPrefix>First sentence of the message to be delivered to customer after successful transaction</smsPrefix>
    <smsPrefix>Last sentence of the message to be delivered to customer after successful transaction</smsPrefix>
    <product>product name</product>
    <productType>food etc</productType>
</request>');

$request->setBody($body);
$request->setOptions(array());
$request->setHeaders(array(
  'Content-Type' => 'application/xml',
  'Authorization' => 'Bearer {Your token}'
));

$client->enqueue($request)->send();

$response = $client->getResponse();
echo $response->getBody();
                
            
                
OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("application/xml");

RequestBody body = RequestBody.create(mediaType, "<request>
    <customer system="ISDN">99XXXXXX</customer>
    <amount>2</amount>
    <description>Description of your choice</description>
    <smsPrefix>First sentence of the message to be delivered to customer after successful transaction</smsPrefix>
    <smsPrefix>Last sentence of the message to be delivered to customer after successful transaction</smsPrefix>
    <product>product name</product>
    <productType>Gaming</productType>
</request>");

Request request = new Request.Builder()
  .url("https://api.monpay.mn/resource/partner/v1/sell")
  .method("POST", body)
  .addHeader("Content-Type", "application/xml")
  .addHeader("Authorization", "Bearer {your token}")
  .build();

Response response = client.newCall(request).execute();
                
            
Header
Method POST
Authorization Bearer XXXXXXXXXX
Content-Type application/xml
Request
Parameters Type Required Description Example
request customer object Yes Customer ID /99xxxxxx, 9999888877776666, 12FA5B1A5D6C5E9E7A/'|trans }} <customer system="ISDN">99xxxxxx</customer>
attribute Yes ISDN – Phone number, CARDID – Card number, NFCID - NFC Card number, LOYALTYID – Account number
amount double Yes Amount
description string No
smsPrefix string No
smsSuffix string No
product string No
productType string No
Response
Parameters Type Description Example
code integer Code determines if request was successful or not 0
info string Description
requestId string Request ID
transactionId string Transaction No
Response type
Parameters Response Description
code 0 Successful
1 Bad request
999 Internal error
info Successful
... Other descriptions