Rest API for SEAGM

updated: 2025-06-20

General API Information

  • The base endpoint is: https://openapi.seagm.com/

  • Sandbox service endpoint is: https://openapi.seagm.io/

  • Business flow chart: https://www.processon.com/view/link/621445341efad407c7c3c850

  • All endpoints return either a JSON object or array.

  • Data is returned in descending order. newest first, oldest last.

  • All time and timestamp related fields are in seconds.

  • For GET endpoints, parameters must be sent as a query string.

  • For POST, PUT, and DELETE endpoints, the parameters may be sent as aquery string or in the request body with content typeapplication/x-www-form-urlencoded. You may mix parameters between both thequery string and request body if you wish to do so.

  • Parameters may be sent in any order.

  • If a parameter sent in both the query string and request body, thequery string parameter will be used.

  • API supports digital code (card) and direct top up purchases.

SUCCESS CODE

  • Any endpoint can retun an SUCCESS;

  • The success payload is as follows:

{
    "code": 200,
    "msg": "OK",
    "data": [...]
}

ERROR CODE

  • Any endpoint can retun an ERROR.

  • There will be an error_info in the response when the code is not equal to 200.

  • The error payload is as follows:

{
    "code": 400,
    "msg": "Bad Request",
    "error_info": {
        "info_code": 20077,
        "info_message": "Card type doesn't exist."
    }
}
  • Specific error codes

Code

Message

Description

200

OK

OK

201

Created

Created (Post request)

202

Accepted

Accepted (Async request)

204

No Content

No Content

304

Not Modified

Not Modified

400

Bad Request

Bad Request

401

Unauthorized

Unauthorized

402

Payment Required

Payment Required

403

Forbidden

The client is authenticated by the server but does not have permission to access the requested resource

404

Not Found

The requested resource is invalid

405

Method Not Allowed

Request method not allowed

406

Missing Required Parameter

Not Acceptable, Missing required parameter

408

Request Timeout

Request timed out

409

Invalid Signature

Resource conflict, Signature and data do not match

410

Gone

Resource is archived and not accessible

412

Precondition Failed

Header parameter verification failed

413

Request Entity Too Large

Too many requested resources for paging display

415

Unsupported Media Type

Unsupported Media Type

416

Stock Out

Stock out

422

Unprocessable Entity

The data format is ok, but the data verification failed

423

Locked

Resources are locked

425

Too Early

The server refuses to process the request in Early Data to avoid possible replay attacks

428

Precondition Required

The necessary header is missing

429

Too Many Requests

Request frequency exceeded

500

Internal Server Error

Server-side processing error

501

Not Implemented

The interface has not been developed yet.

502

Bad Gateway

Core service unavailable

503

Service Unavailable

The requested service is currently busy

598

Network Read Timeout

Core service read timeout error

599

Network Connect Timeout

Core service connect timeout error

  • Specific error code description

    • 1xx Informational

    • 2xx Success

    • 3xx Redirection

    • 4xx Client Error

    • 5xx Server Error

ERROR INFO

  • Specific error info list

info_code

info_message

10201

Created

10202

Accepted

10204

No Content

10304

Not Modified

10400

Bad Request

10401

Unauthorized

10402

Payment Required

10403

Forbidden

10404

Not Found

10405

Method Not Allowed

10406

Missing Required Parameter

10408

Request Timeout

10409

Invalid Signature

10410

Gone

10412

Precondition Failed

10413

Request Entity Too Large

10415

Unsupported Media Type

10416

Stock Out

10417

Order Quantity exceeded stock.

10422

Unprocessable Entity

10423

Locked

10425

Too Early

10428

Precondition Required

10429

Too Many Requests

10500

Internal Server Error

10501

Not Implemented

10502

Bad Gateway

10503

Service Unavailable

10598

Network Read Timeout

10599

Network Connect Timeout

20002

Dismiss a parameter.

20003

Invalid Parameter.

20004

Invalid parameter value.

20006

Invalid Region.

20017

Invalid Page No.

20018

Quantity must be 1 or more.

20019

Quantity must less than MaxAmount.

20021

Payment exceeded your limit. This payment is cancelled.

20022

Vietnamese Dong payment must be more than ₫2000.

20023

All orders must be consistent with the currency.

20026

Credits Account id is invalid.

20030

Invalid Currency.

20031

This buy amount can't be modified.

20032

Quantity must be an integer.

20033

Insufficient Balance.

20035

Invalid user id Or required user id.

20037

Signature parameter is required.

20038

Signature is invalid.

20039

Req Timestamp header is required.

20041

Invalid order.

20042

The number of operations exceeds the limit.

20049

Unauthorized Request.

20050

Account verified is required (email unverified).

20051

Sorry. This product is currently not available for your region. Please return to home page for other product & services.

20057

The request is not allowed.

20058

This email is not allowed.

20059

Request be forbidden

20060

Your account has been locked. You may try to reset your password.

20061

Your account has been suspended. Please contact customer support if this was a mistake.

20062

Product has been off the shelf.

20063

Payment Order expired. Cannot make payment. Please place new order.

20064

Order has been paid.

20071

Card service is not opened.

20072

Topup service is not opened.

20073

You have no access to this type of product.

20074

Payment status is not allow to operate.

20076

The request is not exist.

20077

Card type doesn't exist.

20078

Credits account doesn't exist.

20079

The product doesn't exist.

20080

This order doesn't exist.

20081

This trade doesn't exist.

20089

User is not exist.

20091

Create Failed

20092

Update Failed

20093

500 Internal Server Error

20098

Create trade failed.

20099

Create order failed.

20103

Failed to get pins.

20107

Order Quantity exceeded stock.

20108

Get products list failed.

20109

Failed to save the content.

20110

API version is not supported.

20111

Curl Failed

20112

Balance payment Failed.

20115

Your account is not allowed to make purchases

20116

Your game top-up account has been blocked

20121

Buy amount must be 1 or more

20122

Buy amount must be 1

20124

Invalid Buy Amount

20125

Current product stock out

20126

Can not buy directtopup product type

20127

verify sign failed

20129

The Balance Amount is invalid

20130

ca-shd error

20131

Website closed and service suspended

20133

Player id is invalid.

20134

Failed to verify.

20135

The mch order id already Exist.

PAYMENT CURRENCY

  • All purchases are paid with your account Balance in SEAGM Credits. For more information about SEAGM Credits please refer to this link.

  • Merchants account reload (all supported currencies) will be automatically converted into SEAGM Credits based on our system FX rate. We do not publish our FX.

PAYMENT ORDER CALLBACK

  • For each transaction, we have an asynchronous callback to notify the merchant of the completion status of the order

  • The merchant needs to provide us with an accessible callback address. If the merchant has set a whitelist access, you need to contact us and add our server IP to your whitelist list.

  • Receive the callback, please give us the response string "success" to inform us of the callback result

  • Example of callback content

{
    "id":"12563858",
    "trade_id":"11055829",
    "title":"HipVanS$30 HipVan",
    "category_id":"1006",
    "product_id":"6351",
    "type_id":"6351",
    "created":"1622444052",
    "created_time":"1622444052",
    "currency":"MYR",
    "unit_price":"1.09",
    "buy_amount":"1.00",
    "pay_amount":"1.09",
    "pay_amount_credits": "109",
    "refunded_amount":"0.00",
    "send_amount":"1.000",
    "paid_time":"1622444053",
    "sent_time":"1622444074",
    "pay_status_code":"2",
    "pay_status":"Paid",
    "send_status_code":"3",
    "send_status":"Done",
    "timestamp":1622444077,
    "status":"Done",
    "status_code":10003,
    "mch_order_id": "D2022031106",
    "signature":"fa79f96cf1bfce247cc592d7501a4c3d2d6014cf5ef1da0b75c5ab4535925c2e"
}
  • The signature can be verified according to the signature field, signature verification method

    1.All the data fields of the callback, except the signature, are sorted according to natural (ksort).

    2.Arrange the sorted parameters to form a queryString, for example:a=1&b=34.....

    3.Endpoints use HMAC SHA256 signatures. The HMAC SHA256 signature is a keyed HMAC SHA256 operation.Use your secretKey as the key and queryString as the value for the HMAC operation.

LIMITS

  • A 429 will be returned when either rather limit is violated.

  • When a 429 is recieved, it's your obligation as an API to slow down and not spam the API.

  • Repeatedly violating rate limits and/or failing to back off after receiving 429s will result in an automated IP ban (http status 418).

  • IP bans are tracked and scale in duration for repeat offenders, from 30 minutes to 3 days.

Endpoint security type

  • uid are passed into the Rest API via the query string uid.

  • secret_key are case sensitive.

SIGNED Endpoint security

  • SIGNED endpoints require an additional parameter, signature, to be sent in the query string or request body.

  • Endpoints use HMAC SHA256 signatures. The HMAC SHA256 signature is a keyed HMAC SHA256 operation. Use your secretKey as the key and totalParams as the value for the HMAC operation.

  • The signature is not case sensitive.

  • totalParams is defined as the query string concatenated with therequest body, Key sort.

Timing security

  • A SIGNED endpoint also requires a parameter, timestamp, to be sent which should be the second timestamp of when the request was created and sent.

  • The logic is as follows:

    if (timestamp < (serverTime + 120) && timestamp > (serverTime - 120)) {
      // process request
    } else {
      // reject request
    }

Serious trading is about timing. Networks can be unstable and unreliable, which can lead to requests taking varying amounts of time to reach the servers. With recvWindow, you can specify that the request must be processed within a certain number of milliseconds or be rejected by the server.

Examples

SIGNED Endpoint Examples for GET /v1/me

Here is a step-by-step example of how to send a vaild signed payload from the Linux command line using echo, openssl, and curl.

Key
Value

uid

10001

secretKey

NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j

Parameter
Value

timestamp

1645084639

uid

10001

  • queryString: timestamp=1645084639&uid=10001

  • HMAC SHA256 signature:

    [linux]$ echo -n "timestamp=1645084639&uid=10001" | openssl dgst -sha256 -hmac "NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j"
    (stdin)= c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71
  • curl command:

    (HMAC SHA256)
    [linux]$ curl 'https://openapi.seagm.io/v1/me?timestamp=1645084639&uid=10001&signature=c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71'

SIGNED Endpoint Examples for POST /v1/card-orders

Here is a step-by-step example of how to send a vaild signed payload from the Linux command line using echo, openssl, and curl.

Key
Value

uid

10001

secretKey

NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j

Parameter
Value

timestamp

1645084639

uid

10001

Field
Value

type_id

1

buy_amount

2

  • queryString: uid=10001&timestamp=1645084639&signature=c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71

  • requestBody: type_id=1&buy_amount=2

  • HMAC SHA256 signature:

    [linux]$ echo -n "buy_amount=2&timestamp=1645084639&type_id=1&uid=10001" | openssl dgst -sha256 -hmac "NhqPtmdSJYdKjVHjA7PZj4Mge3R5YNiP1e3UZjInClVN65XAbvqqM6A7H5fATj0j"
    (stdin)= 0fd168b8ddb4876a0358a8d14d0c9f3da0e9b20c5d52b2a00fcf7d1c602f9a77
  • curl command:

    (HMAC SHA256)
    [linux]$ curl -x 'POST' 'https://openapi.seagm.io/v1/card-orders?uid=10001&timestamp=1645084639&signature=c8db56825ae71d6d79447849e617115f4a920fa2acdcab2b053c4b2838bd6b71' -d 'type_id=1&buy_amount=2'

Public API General endpoints

Test connectivity

GET /ping

Test connectivity to the Rest API.

Parameters: NONE

Response:

{
    "code": 200,
    "data": "pong"
}

Check server time

GET /time

Test connectivity to the Rest API and get the current server time.

Parameters: NONE

Response:

{
    "code": 200,
    "data": 1499827319
}

Get account details

GET /v1/me?uid=10001&timestamp=xx&signature=xx

Get balance and other account information.

Parameters:

Parameter
Value
Mandatory

uid

10001

Yes

timestamp

1614666821

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

Rresponse:

{
    "code": 200,
    "data": {
        "id": 10015,
        "email": "[email protected]",
        "username": "ranhuan03",
        "credits": 9946382,
        "currency": "MYR",
        "balance": "99463.82"
    },
    "msg": "OK"
}
Field
Type
Description

data.id

int

Account id

data.email

string

email

data.username

string

The user name

data.credits

int

Credit card balance

data.currency

string

Account default currency

data.balance

float

Default currency balance of the account

Get account history

GET /v1/account-history?uid=10001&timestamp=xx&signature=xx

Get account history

Parameters:

Parameter
Value
Mandatory

uid

1000

Yes

timestamp

1614666821

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

limit

12

No

offset

0

No

Rresponse:

{
    "code": 200,
    "data": {
        "total": 1000,
        "begin": 0,
        "end": 100,
        "logs": [
          {},
          ....
        ]
    }
}
Field
Type
Description

data.total

int

Total records

data.begin

int

Return record start index this time, index starts from 0

data.end

int

Return record end index this time

data.logs[]

array

Logs data

data.logs[].id

int

Log id

data.logs[].account_id

int

User account id

data.logs[].currency

string

Currency

data.logs[].action

string

Action

data.logs[].amount

float

Amount

data.logs[].balance

float

Balance

data.logs[].relative_id

int

Relative id, etc: order id, user id, payment id....

data.logs[].created

int

Log created (timestamp)

Get card category list

GET /v1/card-categories

Gets a categorical list of point card products

Parameters:

Parameter
Value
Mandatory

uid

1000

Yes

timestamp

1614666821

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

{
    "code": 200,
    "data": [
        {
            "id": 1,
            "name": "Cubizone Cubicards (MY)",
            "code": "cubizone-cubicards-my",
            "mode": "pin",
            "region": "",
            "publisher": "",
            "auto_delivery": true
        }
    ],
    "msg": "OK"
}
Field
Type
Description

data[].id

int

Category id

data[].name

String

Category name

data[].code

String

Category code

data[].auto_delivery

bool

Whether to delivery automatically after payment

Get card category details

GET /v1/card-categories/:category_id

Attributes:

Attribute
Value

category_id

1

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

Response:

{
    "code": 200,
    "data": {
        "id": 1,
        "name": "Cubizone Cubicards (MY)",
        "code": "cubizone-cubicards-my",
        "mode": "pin",
        "region": "",
        "publisher": "",
        "auto_delivery": true
    },
    "msg": "OK"
}
Field
Type
Description

data.id

int

Category id (Point card)

data.name

String

Category name (Point card)

data.code

String

Category code (Point card)

data[].auto_delivery

bool

Whether to delivery automatically after payment

Get card type list of specified card category

GET /v1/card-categories/:category_id/card-types

Gets a list of products under a category

Attributes:

Attribute
Value

category_id

1

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

Response:

{
    "code": 200,
    "data": [
        {
            "id": 49,
            "name": "Cubizone 1000 Cubits",
            "category_id": 1,
            "category_name": "Cubizone Cubicards (MY)",
            "par_value_currency": "MYR",
            "par_value": 100,
            "currency": "MYR",
            "unit_price": 100,
            "max_amount": 100,
            "min_amount": 1,
            "origin_price": 100,
            "discount_rate": 0,
            "has_stock": true
        }
    ],
    "msg": "OK"
}
Field
Type
Description

data[].id

int

Type ID (Point card)

data[].name

string

Type name (Point card)

data[].category_id

int

Category ID (Point card)

data[].par_value_currency

string

Currency of par value

data[].par_value

float

Par value

data[].currency

string

Currency

data[].unit_price

float

Unit price

data[].max_amount

int

Maximum single purchase quantity

data[].min_amount

int

Minimum purchase quantity per time

data[].origin_price

float

Original price

data[].discount_rate

float

Discount percentage

data[].has_stock

bool

Is in stock

Get card type details

GET /v1/card-types/:type_id

Get details of a point card product

Attributes:

Attribute
Value

type_id

10026

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

Response:

{
    "code": 200,
    "data": {
        "id": 49,
        "name": "Cubizone 1000 Cubits",
        "category_id": 1,
        "category_name": "Cubizone Cubicards (MY)",
        "par_value_currency": "MYR",
        "par_value": 100,
        "currency": "MYR",
        "unit_price": 100,
        "max_amount": 100,
        "min_amount": 1,
        "origin_price": 100,
        "discount_rate": 0,
        "has_stock": true
    },
    "msg": "OK"
}
Field
Type
Description

data.id

int

Type id

data.name

string

Type name

data.category_id

int

Category id

data.par_value_currency

string

The currency of par value

data.par_value

float

Par value

data.currency

string

Currency

data.unit_price

float

Unit price (after discount)

data.max_amount

int

Maximum single purchase quantity

data.min_amount

int

Minimum single purchase quantity

data.origin_price

float

Original price

data.discount_rate

float

Discount percentage

Create card order

POST /v1/card-orders

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

type_id

49

Yes

buy_amount

1(The default is 1)

No

mch_order_id

D2022031106 (The merchant's order id)

No

Response:

{
    "code": 200,
    "data": {
        "id": 17401657,
        "trade_id": 15440844,
        "title": "Cubizone Cubicards (MY)<span/>Cubizone 1000 Cubits",
        "category_id": 1,
        "product_id": 49,
        "type_id": 49,
        "created": 1614669585,
        "created_time": 1614669585,
        "currency": "MYR",
        "unit_price": "100.00",
        "buy_amount": 1,
        "pay_amount": "100.00",
        "pay_amount_credits": 10000,
        "refunded_amount": "0.00",
        "send_amount": "1.000",
        "paid_time": 1614669585,
        "sent_time": 1614669586,
        "pay_status_code": 2,
        "pay_status": "Paid",
        "send_status_code": 3,
        "send_status": "Done",
        "status": "Done",
        "status_code": 10003,
        "mch_order_id": "D2022031106",
        "cards": [
            {
                "id": 8881121,
                "card_number": "MYF181221000093",
                "card_pin": "WMRKR9LGA6KN8SRNN3",
                "expired": "-"
            }
        ]
    },
    "msg": "OK"
}
Field
Type
Description

data.id

int

Order ID

data.trade_id

int

Payment ID

data.title

string

Order title

data.category_id

int

Category ID

data.type_id

int

Type ID

data.created

int

Order created (timestamp)

data.currency

String

Currency

data.unit_price

float

Unit price

data.buy_amount

int

Buy amunt

data.pay_amount

float

Total payment

data.pay_amount

float

Total payment credits

data.pay_status_code

int

Status for payment

data.refunded_amount

float

Amount refunded

data.send_status_code

int

Status for delivery

data.pay_status

string

Status text for payment

data.sent_amount

float

Quantity delivered

data.send_status

string

Status text for delivery

data.paid_time

int

Paid (timestamp)

data.sent_time

Int

Delivered (timestamp)

data.status

string

Global status

data.status_code

Int

Status for order

data.mch_order_id

string

Merchant's order id

data.cards[]

array

Point cards data

data.cards[].card_number

string

Serial number

data.cards[].card_pin

string

Pin

data.cards[].expired

string

Expired (YYYY-mm-dd)

Get order list

GET /v1/card-orders

Parameters:

Parameter
Value

offset

0

limit

12

uid

10000

timestamp

10000000000

signature

df577f1a153cfcc24791a1de8487f68e3ee3864c5abf19f10ee6e06f4be83246

Response:

{
 {
    "code": 200,
    "data": {
        "total": 61,
        "begin": 0,
        "end": 2,
        "orders": [
            {
                "id": 17401657,
                "trade_id": 15440844,
                "title": "Cubizone Cubicards (MY)<span/>Cubizone 1000 Cubits",
                "category_id": 1,
                "product_id": 49,
                "type_id": 49,
                "created": 1614669585,
                "created_time": 1614669585,
                "currency": "MYR",
                "unit_price": "100.00",
                "buy_amount": 1,
                "pay_amount": "100.00",
                "pay_amount_credits": 10000,
                "refunded_amount": "0.00",
                "send_amount": "1.000",
                "paid_time": 1614669585,
                "sent_time": 1614669586,
                "pay_status_code": 2,
                "pay_status": "Paid",
                "send_status_code": 3,
                "send_status": "Done",
                "status": "Done",
                "status_code": 10003,
                "mch_order_id": "D2022031106"
            },
            {
                "id": 17401656,
                "trade_id": 15440843,
                "title": "Cubizone Cubicards (MY)<span/>Cubizone 1000 Cubits",
                "category_id": 1,
                "product_id": 49,
                "type_id": 49,
                "created": 1614652180,
                "created_time": 1614652180,
                "currency": "MYR",
                "unit_price": "100.00",
                "buy_amount": 1,
                "pay_amount": "100.00",
                "pay_amount_credits": 10000,
                "refunded_amount": "0.00",
                "send_amount": "1.000",
                "paid_time": 1614652180,
                "sent_time": 1614652180,
                "pay_status_code": 2,
                "pay_status": "Paid",
                "send_status_code": 3,
                "send_status": "Done",
                "status": "Done",
                "status_code": 10003,
                "mch_order_id": "D2022031106"
            }
        ]
    },
    "msg": "OK"
}
Field
Type
Description

data.total

int

Total records

data.begin

Int

Return record start index this time, index starts from 0

data.end

int

Return record end index this time

data.orders[]

array

Orders data

data.orders[].id

int

Order ID

data.orders[].trade_id

int

Payment ID

data.orders[].title

string

Order title

data.orders[].category_id

int

Category ID

data.orders[].type_id

int

Type ID

data.orders[].created

int

Order created (timestamp)

data.orders[].currency

String

Currency for unit price

data.orders[].unit_price

float

Unit price

data.ordes[].buy_amount

int

Purchase quantity

data.orders[].pay_amount

float

Total payment

data.orders[].pay_amount_credits

float

Total payment credits

data.orders[].pay_status_code

int

Status for payment

data.orders[].refunded_amount

float

Amount refunded

data.orders[].send_status_code

int

Status for delivery

data.orders[].pay_status

string

Status text for payment

data.orders[].sent_amount

float

Quantity delivered

data.orders[].send_status

string

Status text for delivery

data.orders[].status

string

Global status

data.orders[].status_code

int

Status for order

data.orders[].mch_order_id

string

Merchant's order id

data.paid_time

int

Paid (timestamp)

data.sent_time

int

Delivered (timestamp)

Get order details

GET /v1/card-orders/:order_id

Attributes:

Attribute
Value

order_id

10026

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timesteamp

1000000000

Yes

signature

df577f1a153cfcc24791a1de8487f68e3ee3864c5abf19f10ee6e06f4be83246

Yes

query_type

orderId (The default is orderId. The default query by seagm order id. This value is mchOrderId when you need to query by merchant order id.)

No

Response:

{
    "code": 200,
    "data": {
        "id": 17401657,
        "trade_id": 15440844,
        "title": "Cubizone Cubicards (MY)<span/>Cubizone 1000 Cubits",
        "category_id": 1,
        "product_id": 49,
        "type_id": 49,
        "created": 1614669585,
        "created_time": 1614669585,
        "currency": "MYR",
        "unit_price": "100.00",
        "buy_amount": 1,
        "pay_amount": "100.00",
        "pay_amount_credits": 10000,
        "refunded_amount": "0.00",
        "send_amount": "1.000",
        "paid_time": 1614669585,
        "sent_time": 1614669586,
        "pay_status_code": 2,
        "pay_status": "Paid",
        "send_status_code": 3,
        "send_status": "Done",
        "status": "Done",
        "status_code": 10003,
        "mch_order_id": "D2022031106",
        "cards": [
            {
                "id": 8881121,
                "card_number": "MYF181221000093",
                "card_pin": "WMRKR9LGA6KN8SRNN3",
                "expired": "-"
            }
        ]
    },
    "msg": "OK"
}
Field
Type
Description

data.id

int

Order ID

data.trade_id

int

Payment ID

data.title

string

Order title

data.category_id

int

Category_id

data.type_id

int

Type id

data.created

int

Order created (timestamp)

data.currency

String

Currency for unit price

data.unit_price

float

Unit price

data.buy_amount

int

Purchase quantity

data.pay_amount

float

Total payment

data.pay_amount_credits

float

Total payment credits

data.pay_status_code

int

Status for payment

data.refunded_amount

float

Amount refunded

data.send_status_code

int

Status for delivery

data.pay_status

string

Status text for payment

data.sent_amount

float

Quantity delivered

data.send_status

string

Status text for delivery

data.status

string

Global status

data.status_code

int

Status for order

data.mch_order_id

string

Merchant's order id

data.paid_time

int

Paid (timestamp)

data.sent_time

int

Delivered (timestamp)

data.cards[]

array

Point cards data

data.cards[].card_number

string

Serial number

data.cards[].card_pin

string

Pin

data.cards[].expired

string

Expired (YYYY-mm-dd)

Get direct top up category list

GET /v1/recharge-categories

Gets a categorization list of products in the Direct Filling category

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timesteamp

1000000000

Yes

signature

df577f1a153cfcc24791a1de8487f68e3ee3864c5abf19f10ee6e06f4be83246

Yes

Response:

{
    "code": 200,
    "data": [
        {
            "id": 631,
            "name": "QQ Coin Q币直充 (CN)",
            "code": "qq-qb-direct-top-up",
            "auto_delivery": false
        },
        {
            "id": 633,
            "name": "91wan网页游戏直充",
            "code": "91-wan-direct-top-up",
            "auto_delivery": false
        },
        {
            "id": 634,
            "name": "多玩游戏平台直充",
            "code": "duo-wan-direct-top-up",
            "auto_delivery": false
        },
        ...
    ]
}
Field
Type
Description

data[].id

int

direct top up category id

data[].name

string

direct top up category name

data[].code

string

direct top up category code

data[].auto_delivery

bool

Whether to delivery automatically after payment

Get direct top up category details

GET /v1/recharge-categories/:category_id

Attributes:

Attribute
Value

category_id

1

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timesteamp

1000000000

Yes

signature

df577f1a153cfcc24791a1de8487f68e3ee3864c5abf19f10ee6e06f4be83246

Yes

Response:

{
    "code": 200,
    "data": {
        "id": 631,
        "name": "QQ Coin Q币直充 (CN)",
        "code": "qq-qb-direct-top-up",
        "auto_delivery": false
    },
    "msg": "OK"
}
Field
Type
Description

data.id

int

Category ID

data.name

string

Category name

data.code

string

Category code

data.auto_delivery

bool

Whether to delivery automatically after payment

Get direct top up type list of specified direct top up category

GET /v1/recharge-categories/:category_id/recharge-types

Gets a list of products under a category

Attributes:

Attribute
Value

category_id

1

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timesteamp

1000000000

Yes

signature

df577f1a153cfcc24791a1de8487f68e3ee3864c5abf19f10ee6e06f4be83246

Yes

Response:

{
    "code": 200,
    "data": [
        {
            "id": 1,
            "categoryId": 1,
            "name": "Cubizone 100 Cubits",
            "unitPrice": 0,
            "parValue": 10,
            "parValueCurrency": "MYR",
            "maxAmount": 0,
          	"fields": [
              ...
            ],
        },
        {
            "id": 2,
            "categoryId": 1,
            "name": "Cubizone 200 Cubits",
            "unitPrice": 0,
            "parValue": 20,
            "parValueCurrency": "MYR",
            "maxAmount": 0
        },
        ...
    ]
 }
Field
Type
Description

data[].id

int

Type id

data[].name

string

Type name

data[].category_id

int

Category ID

data[].par_value_currency

string

Currency of par value

data[].par_value

float

Par value

data[].currency

string

Currency of unit price

data[].unit_price

float

Unti price

data[].max_amount

int

Maximum quantity per purchase

data[].min_amount

int

Minimum quantity per purchase

data[].origin_price

float

Original price

data[].discount_rate

float

Discount percentage

data[].fields[]

array

Attribute fields

data[].fields[].type

string

Input type

data[].fields[].label

string

Input lable

data[].fields[].multiline

Bool

Multiline

data[].fields[].name

String

Field name

data[].fields[].placeholder

string

Field placeholder

data[].fields[].prefix

string

Field prefix

data[].fields[].position

int

Suggested layout order of attribute field

data[].fields[].options[]

array

Select options, only for type=select

data[].fields[].options[].lable

string

Option label

data[].fields[].options[].value

string

Option value

data[].fields[].options[].child[]

array

Child Select (Optional)

data[].fields[].options[].child[].name

string

Select name

data[].fields[].options[].child[].label

string

Select label

data[].fields[].options[].child[].prefix

string

Select prefix

data[].fields[].options[].child[].options[]

array

Child select options data

data[].fields[].options[].child[].options[].parent_value

string

Parent select value

data[].fields[].options[].child[].options[].child_options[]

array

Child select options

data[].fields[].options[].child[].options[].child_options[].label

string

Child select option label

data[].fields[].options[].child[].options[].child_options[].value

string

Child select option value

Get direct top up type details

GET /v1/recharge-types/:type_id

Attributes:

Attribute
Value

type_id

10026

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timesteamp

1000000000

Yes

signature

df577f1a153cfcc24791a1de8487f68e3ee3864c5abf19f10ee6e06f4be83246

Yes

Response:

{
    "code": 200,
    "data": {
        "id": 2987,
        "name": "多玩游戏平台_90Y币_100元(直充)",
        "category_id": 634,
        "par_value_currency": "CNY",
        "par_value": "100.00",
        "currency": "MYR",
        "unit_price": 60.28,
        "max_amount": 10,
        "min_amount": 1,
        "origin_price": 60.28,
        "discount_rate": 0,
        "fields": [
            {
                "name": "charge_account",
                "type": "input",
                "label": "玩家账号",
                "multiline": false,
                "placeholder": "Please enter 玩家账号",
                "prefix": "",
                "position": 1
            }
        ]
    },
    "msg": "OK"
}
Field
Type
Description

data.id

int

Type ID

data.name

string

Type name

data.category_id

int

Category ID

data.par_value_currency

string

Currency of par value

data.par_value

float

Par value

data.currency

string

Currency of unit_price

data.unit_price

float

Unit Price

data.max_amount

int

Maximum quantity per purchase

data.min_amount

int

Minimum quantity per purchase

data.origin_price

float

Original price

data.discount_rate

float

Discount percentage

data.fields[]

array

Attribute fields

data.fields[].type

string

Input type

data.fields[].label

string

Input lable

data.fields[].multiline

Bool

Multiline

data.fields[].name

String

Field name

data.fields[].placeholder

string

Field placeholder

data.fields[].prefix

string

Field prefix

data.fields[].position

int

Suggested layout order of attribute field

data.fields[].options[]

array

Select options, only for type=select

data.fields[].options[].lable

string

Option label

data.fields[].options[].value

string

Option value

data.fields[].options[].child[]

array

Child Select (Optional)

data.fields[].options[].child[].name

string

Select name

data.fields[].options[].child[].label

string

Select label

data.fields[].options[].child[].prefix

string

Select prefix

data.fields[].options[].child[].options[]

array

Child select options data

data.fields[].options[].child[].options[].parent_value

string

Parent select value

data.fields[].options[].child[].options[].child_options[]

array

Child select options

data.fields[].options[].child[].options[].child_options[].label

string

Child select option label

data.fields[].options[].child[].options[].child_options[].value

string

Child select option value

Create direct top up order

POST /v1/recharge-orders

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

df577f1a153cfcc24791a1de8487f68e3ee3864c5abf19f10ee6e06f4be83246

Yes

type_id

2987

Yes

buy_amount

1(The default is 1)

No

mch_order_id

D2022031106 (The merchant's order id)

No

Response:

{
    "code": 200,
    "data": {
        "id": 17401675,
        "trade_id": 15440860,
        "title": "多玩游戏平台直充<span/>多玩游戏平台_90Y币_100元(直充)",
        "category_id": 634,
        "product_id": 2987,
        "type_id": 2987,
        "created": 1614677031,
        "created_time": 1614677031,
        "currency": "MYR",
        "unit_price": "60.28",
        "buy_amount": 1,
        "pay_amount": "60.28",
        "pay_amount_credits": 6028,
        "refunded_amount": "0.00",
        "send_amount": "0.000",
        "paid_time": 1614677031,
        "sent_time": 0,
        "pay_status_code": 2,
        "pay_status": "Paid",
        "send_status_code": 1,
        "send_status": "Wait send",
        "status": "Wait send",
        "status_code": 10001,
        "mch_order_id": "D2022031106",
        "fields": {
            "charge_account": "dd"
        }
    },
    "msg": "OK"
}
Field
Type
Description

data.id

int

Order ID

data.trade_id

int

Payment ID

data.title

string

Order title

data.category_id

int

Category ID

data.product_id

int

Type ID

data.created

int

Order created timestamp

data.currency

String

Currency

data.unit_price

float

Unit price

data.buy_amount

int

Buy amount

data.pay_amount

float

Total payment

data.pay_amount_credits

float

Total payment credits

data.pay_status_code

int

Status for payment

data.refunded_amount

float

Amount refunded

data.send_status_code

int

Status for delivery

data.pay_status

string

Status text for payment

data.sent_amount

float

Quantity delivered

data.send_status

string

Status text for delivery

data.status

string

Global status text

data.status_code

int

status for order

data.mch_order_id

string

Merchant's order id

data.paid_time

int

Paid (timestamp)

data.sent_time

int

Delivered (timestamp)

data.fields[].title

string

Title of custom field

data.fields[].name

string

Name of custom field

data.fields[].value

string

Value of custom field

Get direct top up order list

GET /v1/recharge-orders

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

10000000000

Yes

signature

b9c28c897d52695a38d096b1db7d4062a37490c64c020ec48c5a120cf786d34f

Yes

offset

0

No

limit

12

No

Response:

{
    "code": 200,
    "data": {
        "total": 109,
        "begin": 0,
        "end": 2,
        "orders": [
            {
                "id": 17401675,
                "trade_id": 15440860,
                "title": "多玩游戏平台直充<span/>多玩游戏平台_90Y币_100元(直充)",
                "category_id": 634,
                "product_id": 2987,
                "type_id": 2987,
                "created": 1614677031,
                "created_time": 1614677031,
                "currency": "MYR",
                "unit_price": "60.28",
                "buy_amount": 1,
                "pay_amount": "60.28",
                "pay_amount_credits": 6028,
                "refunded_amount": "0.00",
                "send_amount": "0.000",
                "paid_time": 1614677031,
                "sent_time": 0,
                "pay_status_code": 2,
                "pay_status": "Paid",
                "send_status_code": 1,
                "send_status": "Wait send",
                "status": "Wait send",
                "status_code": 10001,
                "mch_order_id": "D2022031106",
                "fields": {
                    "charge_account": "dd"
                }
            },
            {
                "id": 17401674,
                "trade_id": 15440859,
                "title": "多玩游戏平台直充<span/>多玩游戏平台_90Y币_100元(直充)",
                "category_id": 634,
                "product_id": 2987,
                "type_id": 2987,
                "created": 1614676998,
                "created_time": 1614676998,
                "currency": "MYR",
                "unit_price": "60.28",
                "buy_amount": 1,
                "pay_amount": "60.28",
                "pay_amount_credits": 6028,
                "refunded_amount": "0.00",
                "send_amount": "0.000",
                "paid_time": 1614676998,
                "sent_time": 0,
                "pay_status_code": 2,
                "pay_status": "Paid",
                "send_status_code": 1,
                "send_status": "Wait send",
                "status": "Wait send",
                "status_code": 10001,
                "mch_order_id": "D2022031106",
                "fields": {
                    "charge_account": "dd"
                }
            }
        ]
    },
    "msg": "OK"
}
Field
Type
Description

data.total

int

Total records

data.begin

Int

Return the start index of the order list this time

data.end

int

Return the end index of the order list this time

data.orders[]

array

Orders data

data.orders[].id

int

Order ID

data.orders[].trade_id

int

Payment ID

data.orders[].title

string

Order title

data.orders[].category_id

int

Card category_id

data.orders[].product_id

int

Card category type id

data.orders[].created

int

Order created timestamp

data.orders[].currency

String

Currency for unit price

data.orders[].unit_price

float

Unit price

data.orders[].buy_amount

int

Purchase quantity

data.orders[].pay_amount

float

Total payment

data.orders[].pay_amount_credits

float

Total payment credits

data.orders[].pay_status_code

int

Status for Payment

data.orders[].refunded_amount

float

Amount Refunded

data.orders[].send_status_code

int

Status for Delivery

data.orders[].pay_status

string

Status text for Payment

data.orders[].sent_amount

float

Quantity delivered

data.orders[].send_status

string

Status text for delivery

data.orders[].status

string

Global status text

data.orders[].status_code

int

status for order

data.orders[].mch_order_id

string

Merchant's order id

data.orders[].paid_time

int

Paid (timestamp)

data.orders[].sent_time

int

Delivered (timestamp)

data.orders[].fields[].title

string

Title of custom field

data.orders[].fields[].name

string

Name of custom field

data.orders[].fields[].value

string

Value of custom field

Get direct top up order details

GET /v1/recharge-orders/:order_id

Attributes:

Attribute
Value

order_id

10026

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timesteamp

1000000000

Yes

signature

ec9058d2352247ea7a03c48e7ffdb87877c5832dfc4a9578a5edd715d7215741

Yes

query_type

orderId (The default is orderId. The default query by seagm order id. This value is mchOrderId when you need to query by merchant order id.)

No

Response:

{
    "code": 200,
    "data": {
        "id": 17401675,
        "trade_id": 15440860,
        "title": "多玩游戏平台直充<span/>多玩游戏平台_90Y币_100元(直充)",
        "category_id": 634,
        "product_id": 2987,
        "type_id": 2987,
        "created": 1614677031,
        "created_time": 1614677031,
        "currency": "MYR",
        "unit_price": "60.28",
        "buy_amount": 1,
        "pay_amount": "60.28",
        "pay_amount_credits": 6028,
        "refunded_amount": "0.00",
        "send_amount": "0.000",
        "paid_time": 1614677031,
        "sent_time": 0,
        "pay_status_code": 2,
        "pay_status": "Paid",
        "send_status_code": 1,
        "send_status": "Wait send",
        "status": "Wait send",
        "status_code": 10001,
        "mch_order_id": "D2022031106",
        "fields": {
            "charge_account": "dd"
        }
    },
    "msg": "OK"
}
Field
Type
Description

data.id

int

Order ID

data.trade_id

int

Payment ID

data.title

string

Order title

data.category_id

int

Category_id

data.type_id

int

Type id

data.created

int

Order created timestamp

data.currency

String

Currency for unit price

data.unit_price

float

Unit price

data.buy_amount

int

Purchase quantity

data.pay_amount

float

Total payment

data.pay_amount_credits

float

Total payment credits

data.pay_status_code

int

Status for Payment

data.refunded_amount

float

Amount Refunded

data.send_status_code

int

Status for Delivery

data.pay_status

string

Status text for Payment

data.sent_amount

float

Quantity delivered

data.send_status

string

Status text for delivery

data.status

string

Global status text

data.status_code

int

status for order

data.mch_order_id

string

Merchant's order id

data.paid_time

int

Paid (timestamp)

data.sent_time

int

Delivered (timestamp)

data.fields[].title

string

Title of custom field

data.fields[].name

string

Name of custom field

data.fields[].value

string

Value of custom field

Get mobile recharge country list

GET /v1/mobile-recharge/countries

Get a list of countries available for mobile recharge

Parameters:

Parameter
Value
Mandatory

uid

1000

Yes

timestamp

1614666821

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

{
    "code": 200,
    "msg": "OK",
    "data": [
        {
            "id": 12,
            "icon": "https://seagm-media.seagmcdn.com/mobile-recharge/region/flag-id.svg",
            "code": "id",
            "name": "Indonesia",
            "calling_code": "62"
        },
        {
            "id": 1,
            "icon": "https://seagm-media.seagmcdn.com/mobile-recharge/region/flag-my.svg",
            "code": "my",
            "name": "Malaysia",
            "calling_code": "60"
        },
    ]
}
Field
Type
Description

data[].id

int

Country id

data[].icon

String

Country flag image

data[].code

String

Country code

data[].name

String

Country name

data[].calling_code

String

Country calling code

Get mobile recharge country's operator list

GET /v1/mobile-recharge/operators

Get a list of mobile operators for a specific country for mobile recharge

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

country_code

my

Yes

Response:

{
    "code": 200,
    "msg": "OK",
    "data": [
        {
            "id": 248,
            "logo": "https://seagm-media.seagmcdn.com/mobile-recharge/operator/logo-Celcom-Malaysia.png",
            "name": "Celcom Malaysia",
            "code": "Celcom-Malaysia",
            "country_name": "Malaysia",
            "country_code": "my"
        },
        {
            "id": 249,
            "logo": "https://seagm-media.seagmcdn.com/mobile-recharge/operator/logo-DiGi-Malaysia.png",
            "name": "DiGi Malaysia",
            "code": "DiGi-Malaysia",
            "country_name": "Malaysia",
            "country_code": "my"
        },
        {
            "id": 252,
            "logo": "https://seagm-media.seagmcdn.com/mobile-recharge/operator/logo-UMobile-Malaysia.png",
            "name": "UMobile Malaysia",
            "code": "UMobile-Malaysia",
            "country_name": "Malaysia",
            "country_code": "my"
        }
    ]
}
Field
Type
Description

data.id

int

Operator id

data.logo

string

Operator logo image

data.name

String

Operator name

data.code

String

Operator code

data.country_name

string

Operator country name

data.country_code

String

Operator country code

Get mobile recharge operator's product list

GET /v1/mobile-recharge/products

Get a list of mobile recharge products for a specific operator

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

operator_id

196

Yes

Response:

{
    "code": 200,
    "msg": "OK",
    "data": {
        "airtime": [
            {
                "product_id": 4525,
                "product_name": "50000 IDR Credits",
                "product_type": "airtime",
                "product_desc": "50000 IDR",
                "currency": "MYR",
                "origin_price": 24.16,
                "discount_rate": 2,
                "unit_price": 23.68,
                "validity": "45 Days",
                "local_tax": "0",
                "local_received": "50000 IDR Credits"
            },
            {
                "product_id": 10826,
                "product_name": "100000 IDR Credits",
                "product_type": "airtime",
                "product_desc": "IDR 100000.00",
                "currency": "MYR",
                "origin_price": 34.94,
                "discount_rate": 2,
                "unit_price": 34.24,
                "validity": "",
                "local_tax": "0",
                "local_received": "100000 IDR Credits"
            }
        ],
        "data": [
            {
                "product_id": 4513,
                "product_name": "Xtra Hotrod Special XL, 7hr",
                "product_type": "data",
                "product_desc": "Main Quota 3.5GB + Area Quota up to 19.5GB + YouTube 24 hours 5.5GB. Active period 7 days. Automatic renewal does not apply.",
                "currency": "MYR",
                "origin_price": 13.98,
                "discount_rate": 2,
                "unit_price": 13.7,
                "validity": "7 Days",
                "local_tax": "0",
                "local_received": "Main Quota 3.5GB + Area Quota up to 19.5GB + YouTube 24 hours 5.5GB. Active period 7 days. Automatic renewal does not apply."
            },
            {
                "product_id": 4514,
                "product_name": "XL Indonesia Internet - HotRod 24hr 1.5GB, 30 Days",
                "product_type": "data",
                "product_desc": "1.5GB data, 30 days",
                "currency": "MYR",
                "origin_price": 22.67,
                "discount_rate": 2,
                "unit_price": 22.22,
                "validity": "30 Days",
                "local_tax": "0",
                "local_received": "1.5GB data, 30 days"
            }
        ],
        "bundle": [
            {
                "product_id": 4516,
                "product_name": "Xtra Combo 59000",
                "product_type": "bundle",
                "product_desc": "5GB data + 10GB YouTube + Free YouTube access (0100-0600 WIB), 20 minutes talktime to all operators, 30 days",
                "currency": "MYR",
                "origin_price": 26.51,
                "discount_rate": 2,
                "unit_price": 25.98,
                "validity": "30 Days",
                "local_tax": "0",
                "local_received": "5GB data + 10GB YouTube + Free YouTube access (0100-0600 WIB), 20 minutes talktime to all operators, 30 days"
            },
            {
                "product_id": 4517,
                "product_name": "Xtra Combo 89000",
                "product_type": "bundle",
                "product_desc": "10GB data + 10GB YouTube + Free YouTube access (0100-0600 WIB), 40 minutes talktime to all operators, 30 days",
                "currency": "MYR",
                "origin_price": 39.52,
                "discount_rate": 2,
                "unit_price": 38.73,
                "validity": "30 Days",
                "local_tax": "0",
                "local_received": "10GB data + 10GB YouTube + Free YouTube access (0100-0600 WIB), 40 minutes talktime to all operators, 30 days"
            }
        ]
    }
}
Field
Type
Description

data.airtime[]

array

Airtime product information

data.airtime[].product_id

int

Product ID

data.airtime[].product_name

String

Product name

data.airtime[].product_type

String

Product type

data.airtime[].product_desc

string

Product description

data.airtime[].currency

String

Currency

data.airtime[].origin_price

Float

Origin price

data.airtime[].discount_rate

Float

Discount rate

data.airtime[].unit_price

Float

Unit price

data.airtime[].validity

string

Validity

data.airtime[].local_tax

String

Tax

data.airtime[].local_received

String

Actual amount

data.data[]

array

Data product information

data.data[].product_id

int

Product ID

data.data[].product_name

String

Product name

data.data[].product_type

String

Product type

data.data[].product_desc

string

Product description

data.data[].currency

String

Currency

data.data[].origin_price

Float

Origin price

data.data[].discount_rate

Float

Discount rate

data.data[].unit_price

Float

Unit price

data.data[].validity

string

Validity

data.data[].local_tax

String

Tax

data.data[].local_received

String

Actual amount

data.bundle[]

array

Bundle product information

data.bundle[].product_id

int

Product ID

data.bundle[].product_name

String

Product name

data.bundle[].product_type

String

Product type

data.bundle[].product_desc

string

Product description

data.bundle[].currency

String

Currency

data.bundle[].origin_price

Float

Origin price

data.bundle[].discount_rate

Float

Discount rate

data.bundle[].unit_price

Float

Unit price

data.bundle[].validity

string

Validity

data.bundle[].local_tax

String

Tax

data.bundle[].local_received

String

Actual amount

Verify mobile recharge

POST /v1/mobile-recharge/verify

Verify mobile recharge before proceed with order creation. You may skip this step if not required.

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

calling_code

86

Yes

phone_number

18701341079

Yes

product_id

1896

Yes

Response:

{
    "code": 200,
    "msg": "OK",
    "data": {
        "product_id": 1896,
        "calling_code": "86",
        "phone_number": "18701341079",
        "product": {
            "product_id": 1896,
            "product_name": "50 CNY Credits",
            "product_type": "airtime", 
            "product_desc": "50 CNY",
            "currency": "MYR",
            "origin_price": 55.99,
            "discount_rate": 0,
            "unit_price": 55.99,
            "validity": "",
            "local_tax": "0",
            "local_received": "50 CNY Credits"
        },
        "operator": {
            "id": 80,
            "logo": "https://seagm-media.seagmcdn.com/mobile-recharge/operator/logo-China-Mobile-China.png",
            "name": "China Mobile China",
            "code": "China-Mobile-China",
            "country_name": "China",
            "country_code": "cn"
        }
    }
}
Field
Type
Description

data.product_id

int

Product ID

data.calling_code

string

Calling code

data.phone_number

string

Phone number

data.product[]

array

Product data

data.product[].product_id

int

Product ID

data.product[].product_name

string

Product name

data.product[].product_type

string

Product type

data.product[].product_desc

string

Product description

data.product[].currency

string

Currency

data.product[].origin_price

float

Origin price

data.product[].discount_rate

float

Discount rate

data.product[].unit_price

float

Unit price

data.product[].validity

string

Validity

data.product[].local_tax

string

Tax

data.product[].local_received

string

Actual amount

data.operator[]

array

Operator information

data.operator[].id

int

Operator ID

data.operator[].logo

string

Operator logo

data.operator[].name

string

Operator name

data.operator[].code

string

Operator code

data.operator[].country_name

string

Operator country name

data.operator[].country_code

string

Operator country code

Create mobile recharge order

POST /v1/mobile-recharge/create

Submit mobile recharge confirmation. Create order.

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

calling_code

86

Yes

phone_number

18701341079

Yes

product_id

1896

Yes

mch_order_id

D2022031106 (The merchant's order id)

No

Response:

{
    "code": 200,
    "msg": "OK",
    "data": {
        "id": 12601370,
        "trade_id": 11073497,
        "title": "China Mobile China<span/>50 CNY Credits",
        "category_id": 80,
        "product_id": 1896,
        "type_id": 1896,
        "created": 1715417579,
        "created_time": 1715417579,
        "currency": "MYR",
        "unit_price": "55.99",
        "buy_amount": 1,
        "pay_amount": "55.99",
        "pay_amount_credits": 5599,
        "refunded_amount": "0.00",
        "send_amount": "0.000",
        "paid_time": 1715417580,
        "sent_time": 0,
        "pay_status_code": 2,
        "pay_status": "Paid",
        "send_status_code": 1,
        "send_status": "Wait send",
        "status": "Wait send",
        "status_code": 10001,
        "mch_order_id": "TEST111144",
        "fields": {
            "calling_code": "86",
            "phone_number": "18701341079",
            "validity": "",
            "local_tax": "0.00",
            "local_received": "50 CNY Credits"
        }
    }
}
Field
Type
Description

data.id

int

Order ID

data.trade_id

int

Payment ID

data.title

string

Order title

data.category_id

int

Category_id

data.type_id

int

Type id

data.created

int

Order created (timestamp)

data.currency

String

Unit price currency

data.unit_price

float

Unit price

data.buy_amount

int

Purchase quantity

data.pay_amount

float

Total payment

data.pay_amount_credits

float

Total payment credits

data.refunded_amount

float

Amount refunded

data.sent_amount

float

Quantity delivered

data.paid_time

int

Paid (timestamp)

data.sent_time

int

Delivered (timestamp)

data.pay_status_code

int

Payment status

data.pay_status

string

Payment status description

data.send_status_code

int

Delivery status

data.send_status

string

Delivery status description

data.status

string

Global status

data.status_code

int

Order status

data.mch_order_id

string

Merchant's order id

data.fields[]

array

Recharge information

data.fields[].calling_code

string

Calling code

data.fields[].phone_number

string

Phone number

data.fields[].validity

string

Validity

data.fields[].local_tax

string

Tax

data.fields[].local_received

string

Actual amount

Get mobile recharge order list

GET /v1/mobile-recharge/orders

Get mobile phone recharge order list

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

offset

0

No

limit

12

No

Response:

{
    "code": 200,
    "msg": "OK",
    "data": {
        "total": 11,
        "begin": 0,
        "end": 11,
        "orders": [
            {
                "id": 12600958,
                "trade_id": 11073085,
                "title": "China Mobile China<span/>50 CNY Credits",
                "category_id": 80,
                "product_id": 1896,
                "type_id": 1896,
                "created": 1712045848,
                "created_time": 1712045848,
                "currency": "MYR",
                "unit_price": "55.99",
                "buy_amount": 1,
                "pay_amount": "55.99",
                "pay_amount_credits": 5599,
                "refunded_amount": "0.00",
                "send_amount": "0.000",
                "paid_time": 1712045848,
                "sent_time": 0,
                "pay_status_code": 2,
                "pay_status": "Paid",
                "send_status_code": 1,
                "send_status": "Wait send",
                "status": "Wait send",
                "status_code": 10001,
                "mch_order_id": "TEST111116",
                "fields": {
                    "calling_code": "86",
                    "phone_number": "18701341079",
                    "validity": "",
                    "local_tax": "0.00",
                    "local_received": ""
                }
            },
            {
                "id": 12598570,
                "trade_id": 11070703,
                "title": "Telkomsel Indonesia<span/>50000 IDR Credits",
                "category_id": 199,
                "product_id": 4579,
                "type_id": 4579,
                "created": 1706007177,
                "created_time": 1706007177,
                "currency": "SGD",
                "unit_price": "7.23",
                "buy_amount": 1,
                "pay_amount": "7.23",
                "pay_amount_credits": 2480,
                "refunded_amount": "0.00",
                "send_amount": "0.000",
                "paid_time": 1706007178,
                "sent_time": 0,
                "pay_status_code": 2,
                "pay_status": "Paid",
                "send_status_code": 1,
                "send_status": "Wait send",
                "status": "Wait send",
                "status_code": 10001,
                "mch_order_id": "",
                "fields": {
                    "calling_code": "62",
                    "phone_number": "821389857",
                    "validity": "",
                    "local_tax": "0.00",
                    "local_received": ""
                }
            }
        ]
    }
}
Field
Type
Description

data.total

int

Total records

data.begin

Int

Return record start index this time, index starts from 0

data.end

int

Return record end index this time

data.orders[]

array

Orders information

data.orders[].id

int

Order ID

data.orders[].trade_id

int

Payment ID

data.orders[].title

string

Order title

data.orders[].category_id

int

Category_id

data.orders[].type_id

int

Type id

data.orders[].created

int

Order created (timestamp)

data.orders[].currency

String

Unit price currency

data.orders[].unit_price

float

Unit price

data.orders[].buy_amount

int

Purchase quantity

data.orders[].pay_amount

float

Total payment

data.orders[].pay_amount_credits

float

Total payment credits

data.orders[].refunded_amount

float

Amount refunded

data.orders[].sent_amount

float

Quantity delivered

data.orders[].paid_time

int

Paid (timestamp)

data.orders[].sent_time

int

Delivered (timestamp)

data.orders[].pay_status_code

int

Payment status

data.orders[].pay_status

string

Payment status description

data.orders[].send_status_code

int

Delivery status

data.orders[].send_status

string

Delivery status description

data.orders[].status

string

Global status

data.orders[].status_code

int

Order status

data.orders[].mch_order_id

string

Merchant's order id

data.orders[].fields[]

array

Recharge information

data.orders[].fields[].calling_code

string

Calling code

data.orders[].fields[].phone_number

string

Phone number

data.orders[].fields[].validity

string

Validity

data.orders[].fields[].local_tax

string

Tax

data.orders[].fields[].local_received

string

Actual amount

Get mobile recharge order details

GET /v1/mobile-recharge/order_info

Get mobile recharge order detail

Parameters:

Parameter
Value
Mandatory

uid

10000

Yes

timestamp

1000000000

Yes

signature

8d4a4fe7f08b19616f73c1355da6816dac6f0da893d1e55cc2d7940c86fc0914

Yes

order_id

12598570

Yes

query_type

orderId (The default is orderId. The default query by seagm order id. This value is mchOrderId when you need to query by merchant order id.)

No

Response:

{
    "code": 200,
    "msg": "OK",
    "data": {
        "id": 12601192,
        "trade_id": 11073319,
        "title": "China Mobile China<span/>50 CNY Credits",
        "category_id": 80,
        "product_id": 1896,
        "type_id": 1896,
        "created": 1712720420,
        "created_time": 1712720420,
        "currency": "MYR",
        "unit_price": "55.99",
        "buy_amount": 1,
        "pay_amount": "55.99",
        "pay_amount_credits": 5599,
        "refunded_amount": "0.00",
        "send_amount": "0.000",
        "paid_time": 1712720420,
        "sent_time": 0,
        "pay_status_code": 2,
        "pay_status": "Paid",
        "send_status_code": 1,
        "send_status": "Wait send",
        "status": "Wait send",
        "status_code": 10001,
        "mch_order_id": "TEST111132",
        "fields": {
            "calling_code": "86",
            "phone_number": "18701341079",
            "validity": "",
            "local_tax": "0.00",
            "local_received": ""
        }
    }
}
Field
Type
Description

data.id

int

Order ID

data.trade_id

int

Payment ID

data.title

string

Order title

data.category_id

int

Category id

data.type_id

int

Type id

data.created

int

Order created (timestamp)

data.currency

String

Unit price currency

data.unit_price

float

Unit price

data.buy_amount

int

Purchase quantity

data.pay_amount

float

Total payment

data.pay_amount_credits

float

Total payment credits

data.refunded_amount

float

Amount refunded

data.sent_amount

float

Quantity delivered

data.paid_time

int

Paid (timestamp)

data.sent_time

int

Delivered (timestamp)

data.pay_status_code

int

Payment status

data.pay_status

string

Payment status description

data.send_status_code

int

Delivery status

data.send_status

string

Delivery status description

data.status

string

Global status

data.status_code

int

Status for order

data.mch_order_id

string

Merchant's order id

data.fields[]

array

Recharge information

data.fields[].calling_code

string

Calling code

data.fields[].phone_number

string

Phone number

data.fields[].validity

string

Validity

data.fields[].local_tax

string

Tax

data.fields[].local_received

string

Actual amount

Public API ENUM definitions

Order status code:

status_code
status
Description

10000

Unpaid

unpaid

10001

Wait send

Paid and waiting to be sended

10002

Sending...

Sending...

10003

Done

Order completed

10004

Refunded

Order has been refunded

Order payment status code:

Field
Type
Description

pay_status_code

int

Payment status code: 1=>Unpaid; 2=>Paid; 3=>Refunded; 4=>Payment Requested; 5=>Expired

send_status_code

int

Delivery status code: 1=>Wait send; 2=>Sending...; 3=>Done; 4=> Received

Last updated

Was this helpful?