Flow

Methods

1. Check Info

Allow partner get information about billId, account Info

Request

  • Method: POST
  • URL: api/bill/check-info
Name Type Required Description
requestId String X Unique String for each request
serviceCode String X Momo will provide
reference1 String X It depends on service
reference2 String It depends on service

Response

Name Type Level Description
requestId String L1 Same with request
resultCode Integer L1 Result Code of request
referenceId String L1 Unique for each response
message String L1 Result message
totalAmount Long L1 Amount need to be paid
Extras JsonObject L1 Other Information
AccountInfo JsonObject L1 JsonObject about the wallet information
Name String L2 Client (Buyer) name
Email String L2 Client email
Mobile String L2 Phone number
personalId String L2
Address String L2
dateOfBirth String L2 yyyy-MM-dd
billList JsonArray L1 Arrays of BillInfo. Detail of each jsonObject is defined below
billId String L2 Bill Number
amount Integer L2 Amount of this bill
toDate String L2
fromDate String L2
extraInfo JsonObject L2 Other information of this bill info.
type String L2

2. Payment

Request

  • Method: POST
  • URL: api/bill/payment
Name Type Required Description
requestId String x Unique String for each request
password String x Static value as provide by Momo
serviceCode String x Momo will provide
reference1 String x It depends on service
reference2 String It depends on service
customerPhone String x Customer phone number
amount Integer x Paid amount
date String x payment date (yyyy-MM-dd HH:mm:ss)

Response

Name Type Description
requestId String Same with request
resultCode Integer Result Code of request
referenceId String Unique for each response
message String Result message
paymentRef String Unique String for each transfer response, using for report

3. Check Status

Request

  • Method: POST
  • URL: api/bill/status
Name Type Required Description
requestId String X Unique String for each request
reference1 String X The request Id that partner want to check

Response

Name Type Description
requestId String Same with request
resultCode Integer Result Code of request
referenceId String Unique for each response
message String Result message
date String Transaction date:
format (yyyy-MM-dd HH:mm:ss)
data JsonObject Status information, content is the same as paymentResponse

4. Balance

Allow partner get current partner wallet’s balance

Request

  • Method: POST
  • URL: api/bill/balance
Name Type Required Description
requestId String X Unique String for each request
password String X Static value as provided by Momo

Response

Name Type Description
requestId String Same with request
resultCode Integer Result Code of request
referenceId String Unique for each response
message String Result message
amount Integer Current balance

Example:

Request
{
    "requestId": "wqrwpo2343240xsad213", 
    "username": "PARTNER",
    "password": "a1234567890"
}
Response
{
    "requestId": "wqrwpo2343240xsad213", 
    "referenceId": "2313_e3w24_ddqwdq_dasdasda",
    "resultCode": 0,
    "message": "Success", 
    "amount": 100000000
}

5. Cancel Request

Request

  • Method: POST
  • URL: api/bill/cancel
Name Type Required Description
requestId String X Unique String for each request
password String X Static value as provide by Momo
reference1 String X BillId of the PaymentRequest that you want to cancel
reference2 String X TransactionId of the PaymentRequest that you want to cancel
amount Long X amount
date String X Transaction date: (YYYY-MM-DDThh:mm:ssTZD)

Response

Name Type Description
requestId String Same with request
resultCode Integer Result Code of request
referenceId String Unique for each response
message String Result message
amount long Current balance
date String Transaction finished date: (format yyyy-MM-dd HH:mm:ss)

Services

Mservice will provide the correct serviceCode on production.

STT Service ServiceCode Reference1 Reference2
1 Nước Gia Định giadinhwater ContractNumber empty
2 Nước Thủ Đức thuducwater ContractNumber empty
3 ACS acs ContractNumber empty
4 HD Saison hdsaison ContractNumber empty
5 Home Credit homecredit ContractNumber empty
6 Fe Credit fecredit ContractNumber/creditaccount empty
7 Mobifone trả sau vmsbilling ContractNumber empty
8 Mobifone trả trước vmstopup ContractNumber empty
9 Mã thẻ Mobifone vmssoftpin ContractNumber empty
10 Vinaphone trả sau vnpbilling ContractNumber empty
11 Vinaphone trả trước vnptopup ContractNumber empty
12 Mã thẻ Vinaphone vnpsoftpin ContractNumber empty
13 Viettel trả sau vtlbilling ContractNumber empty
14 Viettel trả trước vtltopup ContractNumber empty
15 Mã thẻ Viettel vtlsoftpin ContractNumber empty
16 Điện lực TP HCM evnhcm ContractNumber/credit account empty
17 VNPT HCM adslvnpthcm ContractNumber empty
18 Mirae Asset adslvnpthcm ContractNumber empty
19 Mirae Asset mirae_asset ContractNumber empty
20 Mcredit finance_collection_mcredit ContractNumber empty
21 VietCredit finance_cfc ContractNumber empty
22 TPBank - TPFiCo finance_collection_tpfico ContractNumber empty
23 Doctor Đồng finstar ContractNumber empty
24 SHB Finance finance_collection_shb ContractNumber empty
25 vĐồng finance_collection_vdong ContractNumber empty
26 Easy Credit finance_easycredit ContractNumber empty
27 Tamo finance_collection_tamo ContractNumber empty
28 LOTTE Finance finance_collection_lotte ContractNumber empty
29 TienNgay.vn (Tiện Ngay) finance_collection_tienngay ContractNumber empty
30 Fiin Credit finance_collection_fiin ContractNumber empty
31 Paylater finance_collection_paylate ContractNumber empty
32 Tima finance_collection_tima ContractNumber empty
33 OnCredit finance_collection_oncredit ContractNumber empty
34 Cash24 finance_collection_cash24 ContractNumber empty
35 CashVN (Newstar) finance_collection_newstar ContractNumber empty
36 VayVND finance_collection_vayvnd ContractNumber empty
37 VietMoney finance_collection_vietmoney ContractNumber empty
38 Tiền Mặt Nhanh finance_tienmatnhanh ContractNumber empty
39 FastMoney (Lendbox) finance_collection_amber ContractNumber empty
40 Movi finance_collection_movi ContractNumber empty
41 Oivay finance_collection_oivay ContractNumber empty
42 Senmo finance_collection_senmo ContractNumber empty
43 Ree-Pay finance_collection_reepay ContractNumber empty
44 Robocash finance_collection_robocash ContractNumber empty
45 Findo finance_collecion_findo ContractNumber empty
46 JACCS finance_collection_jaccs ContractNumber empty
## Transaction reports:

Requirement:

All control reports at least have these fields:

  • Reference1
  • Reference2
  • TransID: Partner’s transaction Id
  • MsTransId: Mservice Transaction Id
  • Status transaction
  • Create time
  • Amount

Error Code

Code Message Status
0 success
1 invalid signature Fail
2 Invalid encrypted data Fail
3 Invalid partner-code Fail
4 Invalid customer phone Fail
5 Invalid password Fail
6 Invalid Json String Fail
7 Insufficient funds Fail
8 Duplicate/Invalid request Id Fail
9 Invalid partner code Fail
10 Unknown result. Please check manual to get final result Pending
50 Invalid request date Fail
51 ServiceCode is invalid Fail
52 Customer phone is invalid Fail
53 Param is invalid Fail
54 Reference1 is invalid Fail
55 Reference2 is invalid Fail
56 Amount is invalid Fail
57 Date format is invalid Fail
58 The service is upgrading Fail
59 Data not found Fail
60 Partner not active Fail
61 Can't cancel unknown request Fail
62 Can't Cancel error request Fail
63 Request was canceled Fail
64 Invalid request Id Fail
65 No bill to pay Fail
66 PaymentRef is invalid Fail