Reference - Individual

Individual

Rate Checking

This enable rate checking from all courier companies in EasyParcel platform. User need to provide sender and receiver address to check the shipment rate.
Try It POST http://demo.connect.easyparcel.my/?ac=EPRateCheckingBulk
api :
bulk[0][pick_code] :
bulk[0][pick_state] :
bulk[0][pick_country] :
bulk[0][send_code] :
bulk[0][send_state] :
bulk[0][send_country] :
bulk[0][weight] :
bulk[0][width] :
bulk[0][length] :
bulk[0][height] :
bulk[0][date_coll] :
bulk[1][pick_code] :
bulk[1][pick_state] :
bulk[1][pick_country] :
bulk[1][send_code] :
bulk[1][send_state] :
bulk[1][send_country] :
bulk[1][weight] :
bulk[1][width] :
bulk[1][length] :
bulk[1][height] :
bulk[1][date_coll] :
Try and see results
<?php 
$domain = "https://demo.connect.easyparcel.my/?ac=";

$action = "EPRateCheckingBulk";
$postparam = array(
'api' => 'xxxxxx',
'bulk' => array(
array(
'pick_code' => '10050',
'pick_state' => 'png',
'pick_country' => 'MY',
'send_code' => '11950',
'send_state' => 'png',
'send_country' => 'MY',
'weight' => '5',
'width' => '0',
'length' => '0',
'height' => '0',
'date_coll' => '2017-11-08',
),
array(
'pick_code' => '14300',
'pick_state' => 'png',
'pick_country' => 'MY',
'send_code' => '81100',
'send_state' => 'jhr',
'send_country' => 'MY',
'weight' => '10',
'width' => '0',
'length' => '0',
'height' => '0',
'date_coll' => '2017-11-08',
),
),
'exclude_fields' => array(
'rates.*.pickup_point',
)
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Making Order

The authenticated user can make single order at EasyParcel. User need to make sure the courier service is available.
Try It POST http://demo.connect.easyparcel.my/?ac=EPSubmitOrderBulk
api :
bulk[0][weight] :
bulk[0][width] :
bulk[0][length] :
bulk[0][height] :
bulk[0][content] :
bulk[0][value] :
bulk[0][service_id] :
bulk[0][pick_point] :
bulk[0][pick_name] :
bulk[0][pick_company] :
bulk[0][pick_contact] :
bulk[0][pick_mobile] :
bulk[0][pick_addr1] :
bulk[0][pick_addr2] :
bulk[0][pick_addr3] :
bulk[0][pick_addr4] :
bulk[0][pick_city] :
bulk[0][pick_state] :
bulk[0][pick_code] :
bulk[0][pick_country] :
bulk[0][send_point] :
bulk[0][send_name] :
bulk[0][send_company] :
bulk[0][send_contact] :
bulk[0][send_mobile] :
bulk[0][send_addr1] :
bulk[0][send_addr2] :
bulk[0][send_addr3] :
bulk[0][send_addr4] :
bulk[0][send_city] :
bulk[0][send_state] :
bulk[0][send_code] :
bulk[0][send_country] :
bulk[0][collect_date] :
bulk[0][sms] :
bulk[0][send_email] :
bulk[0][hs_code] :
bulk[0][REQ_ID] :
bulk[0][reference] :
bulk[0][cod_enabled] :
bulk[0][cod_amount] :
Try and see results
 <?php 
$domain = "https://demo.connect.easyparcel.my/?ac=";

$action = "EPSubmitOrderBulk";
$postparam = array(
'api' => 'xxxxxx',
'bulk' => array(array(
'weight' => '1',
'width' => '1',
'length' => '1',
'height' => '1',
'content' => 'book',
'value' => '10',
'service_id' => 'EP-CS0W',
'pick_point' => '',
'pick_name' => 'Yong Tat',
'pick_company' => 'Yong Tat Sdn Bhd',
'pick_contact' => '0123456789',
'pick_mobile' => '0123456789',
'pick_addr1' => 'ppppp46/7 adfa',
'pick_addr2' => 'test',
'pick_addr3' => '',
'pick_addr4' => '',
'pick_city' => 'city',
'pick_state' => 'png',
'pick_code' => '11950',
'pick_country' => 'MY',
'send_point' => '',
'send_name' => 'sam',
'send_company' => '',
'send_contact' => '0122134567',
'send_mobile' => '0122134567',
'send_addr1' => 'ssssadsasdst test',
'send_addr2' => 'test test',
'send_addr3' => '',
'send_addr4' => '',
'send_city' => 'send city',
'send_state' => 'png','send_code' => '11950',
'send_country' => 'MY',
'collect_date' => '2020-02-20',
'sms' => '0',
'send_email' => '[email protected]',
'hs_code' => 'yshs_code',
'REQ_ID' => 'shipping # 1',
'reference' => 'order12321',
'cod_enabled' => true,
'cod_amount' => '10.00',)
,)
,);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Making Order Payment

This step involves payment for the orders made. The authenticated user can do single order payment. Single order payment refers to payment for a single parcel only. There are various payment conditions that may appear such as insufficient credit (when user’s account do not have sufficient credit to perfom payment), sufficient credit (when there are sufficient credit for payment) and etc.
Try It POST http://demo.connect.easyparcel.my/?ac=EPPayOrderBulk
api :
bulk[0][order_no] :
Try and see results
<?php 
$domain = "https://demo.connect.easyparcel.my/?ac=";

$action = "EPPayOrderBulk";
$postparam = array(
'api' => 'xxxxxx',
'bulk' => array(
array(
'order_no' => 'EI-5UFAI',
),
),
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Checking Order Status

Get order status by using order number is the recommended call to use for management. Use this call to retrieve all orders in which the authenticated caller.
Try It POST http://demo.connect.easyparcel.my/?ac=EPOrderStatusBulk
api :
bulk[0][order_no] :
bulk[1][order_no] :
Try and see results
<?php 
$domain = "https://demo.connect.easyparcel.my/?ac=";

$action = "EPOrderStatusBulk";
$postparam = array(
'api' => 'xxxxxx',
'bulk' => array(
array(
'order_no' => 'EI-AAGWD',
),
array(
'order_no' => 'EI-AAGWD',
),
),
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Checking Parcel Status

Get parcel status by using order number is the recommended call to use for checking the shipment. Use this call to retrieve parcel details.
Try It POST http://demo.connect.easyparcel.my/?ac=EPParcelStatusBulk
api :
bulk[0][order_no] :
bulk[1][order_no] :
Try and see results
<?php 
$domain = "https://demo.connect.easyparcel.my/?ac=";

$action = "EPParcelStatusBulk";
$postparam = array(
'api' => 'xxxxxx',
'bulk' => array(
array(
'order_no' => 'EI-AAGWD',
),
array(
'order_no' => 'EI-AAGWD',
),
),
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Tracking Parcel Details

Track the shipment status using airway bill number.
Try It POST http://demo.connect.easyparcel.my/?ac=EPTrackingBulk
api :
bulk[0][awb_no] :
bulk[1][awb_no] :
Try and see results
<?php 
$domain = "https://demo.connect.easyparcel.my/?ac=";

$action = "EPTrackingBulk";
$postparam = array(
'api' => 'xxxxxx',
'bulk' => array(
array(
'awb_no' => '238725129086',
),
array(
'awb_no' => '238725129086',
),
),
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Check Credit Balance

This allow you check currently user balance.
Try It POST http://demo.connect.easyparcel.my/?ac=EPCheckCreditBalance
api :
Try and see results
<?php 
$domain = "https://demo.connect.easyparcel.my/?ac=";

$action = "EPCheckCreditBalance";
$postparam = array(
'api' => 'xxxxxx',
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Domestic Express Order

This endpoint is designed to direct create order + payment at EasyParcel. Currently it is limited within Domestic (Malaysia) shipping delivery.
Try It POST http://demo.connect.easyparcel.my/?ac=EPSubmitOrderBulkV3
api :
courier[0] :
dropoff :
bulk[0][referrence] :
bulk[0][weight] :
bulk[0][content] :
bulk[0][value] :
bulk[0][pick_name] :
bulk[0][pick_company] :
bulk[0][pick_contact] :
bulk[0][pick_mobile] :
bulk[0][pick_addr1] :
bulk[0][pick_addr2] :
bulk[0][pick_addr3] :
bulk[0][pick_addr4] :
bulk[0][pick_city] :
bulk[0][pick_state] :
bulk[0][pick_code] :
bulk[0][pick_country] :
bulk[0][send_name] :
bulk[0][send_contact] :
bulk[0][send_mobile] :
bulk[0][send_addr1] :
bulk[0][send_addr2] :
bulk[0][send_addr3] :
bulk[0][send_addr4] :
bulk[0][send_city] :
bulk[0][send_state] :
bulk[0][send_code] :
bulk[0][send_country] :
bulk[0][collect_date] :
bulk[0][send_email] :
bulk[0][sms] :
Try and see results
<?php 
$domain = "https://demo.connect.easyparcel.my/?ac=";

$action = "EPSubmitOrderBulkV3";
$postparam = array(
'api' => 'xxxxxx',
'courier' => array('Poslaju'),
'dropoff' => '0',
'bulk' => array(
array(
'referrence' => 'item1',
'weight' => '1',
'content' => '2017-09-14 - book',
'value' => '20',
'pick_name' => 'Yong Tat',
'pick_company' => 'Yong Tat Sdn Bhd',
'pick_contact' => '+6012-1234-5678',
'pick_mobile' => '+6017-1234-5678',
'pick_addr1' => 'ppppp46/7 adfa',
'pick_addr2' => 'test',
'pick_addr3' => 'test',
'pick_addr4' => '',
'pick_city' => 'png',
'pick_state' => 'png',
'pick_code' => '14300',
'pick_country' => 'MY',
'send_name' => 'Sam',
'send_contact' => '+6012-2134567',
'send_mobile' => '+6017-1234-5678',
'send_addr1' => 'ssssadsasdst test',
'send_addr2' => 'test test',
'send_addr3' => 'test',
'send_addr4' => '',
'send_city' => 'png',
'send_state' => 'png',
'send_code' => '11950',
'send_country' => 'MY',
'collect_date' => '2020-03-16',
'send_email' => '[email protected]',
'sms' => '0',
),
),
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Get Parcel Category

This endpoint is designed to get the parcel category id for orders
Try It POST http://demo.connect.easyparcel.my/?ac=EPGetParcelCategory
api :
Try and see results
<?php 
$domain = "https://demo.connect.easyparcel.my/?ac=";

$action = "EPGetParcelCategory";
$postparam = array(
'api' => 'xxxxxx',
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Get Insurance Rate

This enables users to check the insurance rates from specific courier companies on the EasyParcel platform. Users are required to fill in the necessary fields to access the insurance rate information.
Try It POST http://demo.connect.easyparcel.my/?ac=EPInsuranceRateChecking
api :
awb :
parcel_content_value :
courier :
coll_country :
deli_country :
coll_state :
deli_state :
Try and see results
<?php 
$domain = "http://demo.connect.easyparcel.my/?ac=";

$action = "EPInsuranceRateChecking";
$postparam = array(
'api' => 'xxxxxx',
'awb' => 'TestingAWB',
'parcel_content_value' => '390',
'courier' => 'EP-CR05',
'coll_country' => 'MY',
'deli_country' => 'MY',
'coll_state' => 'srw',
'deli_state' => 'srw',
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>

Purchase Insurance

This step involves both ordering and making payments for the orders placed. Authenticated users can make single insurance order payments. Single order payment specifically refers to the payment for a single parcel. Various payment conditions may arise, such as insufficient credit (when the user account lacks sufficient funds for payment) or sufficient credit (when there are adequate funds available for payment).
Try It POST http://demo.connect.easyparcel.my/?ac=EPInsurancePurchase
api :
awb :
parcel_content_value :
courier :
coll_country :
deli_country :
coll_state :
deli_state :
parcel_category_id :
parcel_content :
parcel_content_type :
parcel_content_currency_code :
parcel_content_weight :
coll_name :
coll_company :
coll_mobile_code :
coll_mobile :
coll_alternative_mobile_code :
coll_alternative_mobile :
coll_email :
deli_name :
deli_company :
deli_mobile_code :
deli_mobile :
deli_alternative_mobile_code :
deli_alternative_mobile :
deli_email :
coll_address_1 :
coll_address_2 :
coll_postcode :
coll_city :
deli_address_1 :
deli_address_2 :
deli_postcode :
deli_city :
shipment_date :
Try and see results
<?php 
$domain = "http://demo.connect.easyparcel.my/?ac=";

$action = "EPInsurancePurchase";
$postparam = array(
'api' => 'xxxxxx',
'awb' => 'TESTDomestic',
'parcel_content_value' => '250',
'courier' => 'EP-CR05',
'coll_country' => 'MY',
'deli_country' => 'MY',
'coll_state' => 'png',
'deli_state' => 'png',
'parcel_category_id' => '12',
'parcel_content' => 'testing',
'parcel_content_type' => 'parcel',
'parcel_content_currency_code' => 'MYR',
'parcel_content_weight' => '123',
'coll_name' => '12313',
'coll_company' => 'Testing Company',
'coll_mobile_code' => '60',
'coll_mobile' => '162631234',
'coll_alternative_mobile_code' => '60',
'coll_alternative_mobile' => '123456789',
'coll_email' => '[email protected]',
'deli_name' => 'Receiver Testing',
'deli_company' => 'Receiver Testing Company',
'deli_mobile_code' => '60',
'deli_mobile' => '123456789',
'deli_alternative_mobile_code' => '',
'deli_alternative_mobile' => '',
'deli_email' => '[email protected]',
'coll_address_1' => 'testing',
'coll_address_2' => 'testing 2',
'coll_postcode' => '11950',
'coll_city' => 'penang',
'deli_address_1' => 'test receiver',
'deli_address_2' => 'test receiver 2',
'deli_postcode' => '11950',
'deli_city' => 'penang',
'shipment_date' => '2024-05-11',
);

$url = $domain.$action;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postparam));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

ob_start();
$return = curl_exec($ch);
ob_end_clean();
curl_close($ch);

$json = json_decode($return);
echo "<pre>"; print_r($json); echo "</pre>";
?>