Introduction

DeliveryBox Integration

“DeliveryBox allows you to connect with thousands of riders and delivery vehicles through a single API. DeliveryBox provides you an access to multiple courier/logistic partners.“


Automatic

Create Transaction (Single API)

Create order details and generate a Delivery Gateway Interface (DGI) Link. “callback_url” is required for transaction updates. “parcel_type_id” can be retrieve from [GET] Parcel Type List API.

Content-Type:
application/json
X-DELIVERYBOX-Auth:
<to be created by subscriber>
Accept:
application/json

REQUIREDorder_detailsstring

order details must be in array format [{“name”:”value”, ”price”:”price_value”, ”description”:”desc_value”, ”quantity”:”qty_value”}]


REQUIREDsub_totalstring

Total price of the item to be delivered.


REQUIREDparcel_type_idstring

Parcel type of the item to be delivered.


REQUIREDtxnidstring

Reference number from subscriber.


REQUIREDdigeststring

encrypted value = sha1(subtotal + txnId + header(‘X-DELIVERYBOX-Auth’))


OPTIONALcallback_urlstring

A webhook url, where DeliveryBox Platform throws an update about the order every time there is a real-time change in the order.


OPTIONALsender_first_namestring

First name of the sender.


OPTIONALsender_last_namestring

Last name of the sender.


REQUIREDsender_mobile_numberstring

Mobile number of the sender.


OPTIONALsender_line1_addressstring

House number / Building number , Building Name of the sender.


OPTIONALsender_streetstring

Street name of the sender.


REQUIREDsender_zip_codestring

Zip code of the sender.


OPTIONALsender_statestring

City of the sender.


OPTIONALsender_barangaystring

Barangay of the sender.


REQUIREDsender_building_typestring

Type of area if it’s office or residential where deliveries can be brought to.


REQUIREDsender_latitudestring

Geo location value (latitude) from google maps.


REQUIREDsender_longitudestring

Geo location value (longitude) from google maps.


REQUIREDreceiver_first_namestring

First name of the receiver.


REQUIREDreceiver_last_namestring

Last name of the receiver.


REQUIREDreceiver_mobile_numberstring

Mobile number of the receiver.


REQUIREDreceiver_line1_addressstring

House number / Building number of the receiver.


REQUIREDreceiver_streetstring

Street name of the receiver.


REQUIREDreceiver_zip_codestring

Zip code of the receiver


REQUIREDreceiver_statestring

City of the receiver.


OPTIONALreceiver_municipalitystring

City / Municipality of the receiver


OPTIONALreceiver_barangaystring

Barangay of the receiver.


REQUIREDreceiver_building_typestring

Type of area if it’s office or residential where deliveries can be brought to.


REQUIREDreceiver_latitudestring

Geo location value (latitude) from google maps.


REQUIREDreceiver_longitudestring

Geo location value (longitude) from google maps.


REQUIREDpayment_methodstring

Payment Method used by the customer.

POST
/api/v1/client/transactions/create

<?php
  $curl = curl_init();
  curl_setopt_array($curl, array(
    CURLOPT_URL => ‘https://ws.deliverybox.ph/api/v1/client/transactions/create’,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => ‘’,
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => ‘POST’,
    CURLOPT_POSTFIELDS =>’{
order_details”: “{
sub_total’:0,
parcel_type_id’:’1’,
txnid’:’BR03IJMDUGJ’,
callback_url’:’https://localhost:3000/v1/deliverybox/callback’,
sender_first_name’:’Juan’,
sender_last_name’:’Dela Cruz’,
sender_mobile_number’:’09170000000’,
sender_line1_address’:’MultiSys Smart Community#14 Mt. Olives St., Multinational VillageMoonwalk, Paranaque City, Philippines, 1708’,
sender_street’:’MultiSys Smart Community#14 Mt. Olives St., Multinational Village’,
sender_zip_code’:’1709’,
sender_state’:’Paranaque City’,
sender_barangay’:’Moonwalk’,
sender_building_type’:’office’,
sender_latitude’:’14.4931584’,
sender_longitude’:’121.0024706’,
receiver_first_name’:’Juan’,
receiver_last_name’:’Dela Cruz’,
receiver_mobile_number’:’09171111111’,
receiver_line1_address’:’Elliptical Rd, Diliman, Quezon City, Metro Manila’,
receiver_street’:’Elliptical Rd’,
receiver_zip_code’:’1104’,
receiver_state’:’Quezon City’,
receiver_barangay’:’Diliman’,
receiver_building_type’:’office’,
receiver_latitude’:’14.6995958’,
receiver_longitude’:’121.0825117’,
      }”,
sub_total”:”0”,
parcel_type_id”:”1”,
txnid”:”BR03IJMDUGJ33”,
digest”:”d00646327e41919785c0add79fef0228ba522816”,
callback_url”:”https://localhost:3000/v1/deliverybox/callback”,
sender_first_name”:”Juan”,
sender_last_name”:”Dela Cruz”,
sender_mobile_number”:’09170000000’,
sender_line1_address”:”MultiSys Smart Community#14 Mt. Olives St., Multinational VillageMoonwalk, Paranaque City, Philippines, 1708”,
sender_street”:”MultiSys Smart Community#14 Mt. Olives St., Multinational Village”,
sender_zip_code”:”1709”,
sender_state”:”Paranaque City”,
sender_barangay”:”Moonwalk”,
sender_building_type”:”office”,
      "sender_latitude":"14.4931584",
      "sender_longitude":"121.0024706",
receiver_first_name”:”Juan”,
receiver_last_name”:”Dela Cruz”,
receiver_mobile_number”:”09171111111”,
receiver_line1_address”:”Elliptical Rd, Diliman, Quezon City, Metro Manila”,
receiver_street”:”Elliptical Rd”,
receiver_zip_code”:”1104”,
receiver_state”:”Quezon City”,
receiver_municipality”: “Quezon City”,
receiver_barangay”: “Diliman”,
receiver_building_type”:”residential”,
receiver_latitude”:”14.6995958”,
receiver_longitude”:”121.0825117”,
payment_method”: “COD”
    }’,
    CURLOPT_HTTPHEADER => array(
      ‘Content-Type: application/json’,
      ‘X-DELIVERYBOX-Auth: <token>’,
      ‘Accept: application/json    ),
  ));
  $response = curl_exec($curl);
  curl_close($curl); echo $response;
RESPONSE

order_details”:
  “{
sub_total’:0,
parcel_type_id’:’1’,
txnid’:’BR03IJMDUGJ’,
callback_url’:’https://localhost:3000/v1/deliverybox/callback’,
sender_first_name’:’Juan’,
sender_last_name’:’Dela Cruz’,
sender_mobile_number’:’09170000000’,
sender_line1_address’:’MultiSys Smart Community#14 Mt. Olives St., Multinational VillageMoonwalk, Paranaque City, Philippines, 1708’,
sender_street’:’MultiSys Smart Community#14 Mt. Olives St., Multinational Village’,
sender_zip_code’:’1709’,
sender_state’:’Paranaque City’,
sender_barangay’:’Moonwalk’,
sender_building_type’:’office’,
sender_latitude’:’14.4931584’,
sender_longitude’:’121.0024706’,
receiver_first_name’:’Juan’,
receiver_last_name’:’Dela Cruz’,
receiver_mobile_number’:’09171111111’,
receiver_line1_address’:’Elliptical Rd, Diliman, Quezon City, Metro Manila’,
receiver_street’:’Elliptical Rd’,
receiver_zip_code’:’1104’,
receiver_state’:’Quezon City’,
receiver_barangay’:’Diliman’,
receiver_building_type’:’residential’,
receiver_latitude’:’14.6995958’,
receiver_longitude’:’121.0825117    }”,
sub_total”:”0”,
parcel_type_id”:”1”,
txnid”:”BR03IJMDUGJ33”,
digest”:”d00646327e41919785c0add79fef0228ba522816”,
callback_url”:”https://localhost:3000/v1/deliverybox/callback”,
sender_first_name”:”Juan”,
sender_last_name”:”Dela Cruz”,
sender_mobile_number”:”09170000000”,
sender_line1_address”:”MultiSys Smart Community#14 Mt. Olives St., Multinational VillageMoonwalk, Paranaque City, Philippines, 1708”,
sender_street”:”MultiSys Smart Community#14 Mt. Olives St., Multinational Village”,
sender_zip_code”:”1709”,
sender_state”:”Paranaque City”,
sender_barangay”:”Moonwalk”,
sender_building_type”:”office”,
sender_latitude”:”14.4931584”,
sender_longitude”:”121.0024706”,
receiver_first_name”:”Juan”,
receiver_last_name”:”Dela Cruz”,
receiver_mobile_number”:”09171111111”,
receiver_line1_address”:”Elliptical Rd, Diliman, Quezon City, Metro Manila”,
receiver_street”:”Elliptical Rd”,
receiver_zip_code”:”1104”,
receiver_state”:”Quezon City”,
receiver_municipality”: “Quezon City”,
receiver_barangay”: “Diliman”,
receiver_building_type”:”residential”,
receiver_latitude”:”14.6995958”,
receiver_longitude”:”121.0825117”,
payment_method”: “COD”

Confirm Transaction (Single API)

Create order details and generate a Delivery Gateway Interface (DGI) Link. “callback_url” is required for transaction updates. “parcel_type_id” can be retrieve from [GET] Parcel Type List API.

Content-Type:
application/json
X-DELIVERYBOX-Auth:
<token>
Accept:
application/json

REQUIREDorder_detailsstring

order details must be in array format [{“name”:”value”, ”price”:”price_value”, ”description”:”desc_value”, ”quantity”:”qty_value”}]


REQUIREDsub_totalstring

Total price of the item to be delivered.


REQUIREDparcel_type_idstring

Parcel type of the item to be delivered.


REQUIREDreceiver_first_namestring

First name of the receiver.


REQUIREDreceiver_last_namestring

Last name of the receiver.


REQUIREDreceiver_mobile_numberstring

Mobile number of the receiver.


REQUIREDreceiver_line1_addressstring

House number / Building number of the receiver.


REQUIREDreceiver_streetstring

Street name of the receiver.


REQUIREDreceiver_zip_codestring

Zip code of the receiver.


REQUIREDreceiver_statestring

City of receiver.


REQUIREDsender_first_namestring

First name of the sender.


REQUIREDsender_last_namestring

Last name of the sender.


REQUIREDsender_mobile_numberstring

Mobile number of the sender.


REQUIREDsender_line1_addressstring

House number / Building number , Building Name of the sender.


REQUIREDsender_streetstring

Street name of the sender.


REQUIREDsender_zip_codestring

Zip code of the sender.


REQUIREDsender_statestring

City of the sender.


REQUIREDcallback_urlstring

A webhook url, where DeliveryBox Platform throws an update about the order every time there is a real-time change in the order.

POST
/api/v1/client/transactions/initial

<?php
  $curl = curl_init();
  curl_setopt_array($curl,
    array(
      CURLOPT_URL => ‘https://ws.deliverybox.ph/api/v1/client/transactions/%7Breference%7D/confirm’,
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_ENCODING => ‘’,
      CURLOPT_MAXREDIRS => 10,
      CURLOPT_TIMEOUT => 0,
      CURLOPT_FOLLOWLOCATION => true,
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
      CURLOPT_CUSTOMREQUEST => ‘POST’,
      CURLOPT_POSTFIELDS => ’{
order_details”: “{
reference’:’V012X7Y2’,
quantity’:’1’,
product_id’:’23441123’,
product_name’:’Sample Product’
        }”,
sub_total”: “255”,
parcel_type_id”: “1”,
receiver_first_name”: “Juan”,
receiver_last_name”: “Dela Cruz”,
receiver_mobile_number”: “09171111111”,
receiver_line1_address”: “Elliptical Rd, Diliman, Quezon City, Metro Manila”,
receiver_street”: “Elliptical Rd”,
receiver_zip_code”: “1104”,
receiver_state”: “Quezon City”,
sender_first_name”: “Juan”,
sender_last_name”: “Dela Cruz”,
sender_mobile_number”: “09170000000”,
sender_line1_address”: “MultiSys Smart Community#14 Mt. Olives St., Multinational VillageMoonwalk, Paranaque City, Philippines, 1708”,
sender_street”: “MultiSys Smart Community#14 Mt. Olives St., Multinational Village”,
sender_zip_code”: “1709”,
sender_state”: “Paranaque City”,
callback_url”: “client.domain.dev” }’,
      CURLOPT_HTTPHEADER => array(
        ‘Content-Type: application/json’,
        ‘X-DELIVERYBOX-Auth: <token>’,
        ‘Accept: application/json        ),
      ));
    $response = curl_exec($curl);
    curl_close($curl);
    echo $response;
RESPONSE

{
data”: {
reference”: “9AMXVINYTK”,
digest”: “9e82018733c3efbc4c6ead308d1b092c509107e3”,
txnid”: “AAC-001”,
url”: “https://dgi-deliverybox-develop.multisyscorp.io/9AMXVINYTK”
  }
}

Manual

Create Order

Creates a delivery order from authorized subscriber. Order details and pickup address must be provided. Once created, order status is set to pending.

Accept:
application/json
Content-Type:
application/json
X-DELIVERYBOX-Auth:
mrspeedy

REQUIREDorder_detailsstring

order details must be in array format [{“name”:”value”, ”price”:”price_value”, ”description”:”desc_value”, ”quantity”:”qty_value”}]


REQUIREDsub_totalstring

Total price of the item to be delivered.


REQUIREDparcel_type_idstring

Parcel type of the item to be delivered.


OPTIONALsender_first_namestring

First name of the sender.


OPTIONALsender_last_namestring

Last name of the sender.


REQUIREDreceiver_mobile_numberstring

Mobile number of the receiver.


OPTIONALsender_mobile_numberstring

Mobile Number of the sender.


OPTIONALsender_mobile_number_optionalstring

Secondary option for mobile number of sender.


REQUIREDreceiver_zip_codestring

Zip code of the sender.


OPTIONALsender_line1_addressstring

House No./Building No. of the sender.


OPTIONALsender_streetstring

Street name of the sender.


REQUIREDsender_zip_codestring

Zip code of the sender.


OPTIONALsender_statestring

City of the sender.


OPTIONALsender_barangaystring

Barangay of the sender.


REQUIREDsender_building_typestring

Type of area if it’s office or residential where deliveries can be brought to.


OPTIONALcallback_urlstring

A webhook url, where DeliveryBox Platform throws an update about the order every time there is a real-time change in the order.


OPTIONALsender_longitudestring

Geo location value (longitude) from google maps.


OPTIONALsender_latitudestring

Geo location value (latitude) from google maps.


REQUIREDtxnidstring

Reference number from subscriber (reference ni subscriber).


REQUIREDdigeststring

encrypted value = sha1(subtotal + txnId + header(‘X-DELIVERYBOX-Auth’))


OPTIONALsender_remarksstring

Additional remarks of the sender.

POST
/api/v1/client/transactions/initial

<?php
  $curl = curl_init();

  curl_setopt_array($curl, array(
    CURLOPT_URL => ‘{{develop}}/api/v1/client/transactions/initial’,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => ‘’,
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => ‘POST’,
    CURLOPT_POSTFIELDS => array(
      ‘order_details’ => ‘1 Qty Item’,
      ’sub_total’ => ‘255’,
      ’parcel_type_id’ => ‘1’,
      ’sender_first_name’ => ‘Juan (optional)’,
      ’sender_last_name’ => ‘Dela Cruz (optional)’,
      ’sender_mobile_number’ => ‘09170000000’,
      ’sender_mobile_number_optional’ => ’09******** (optional)’,
      ’sender_line1_address’ => ‘MultiSys Smart Community#14 Mt. Olives St., Multinational VillageMoonwalk, Paranaque City, Philippines, 1708 (optional)’,
      ’sender_street’ => ‘MultiSys Smart Community#14 Mt. Olives St., Multinational Village (optional)’,
      ’sender_zip_code’ => ‘1709’,
      ’sender_state’ => ‘Paranaque City (optional)’,
      ’sender_barangay’ => ‘Moonwalk (optional)’,
      ’sender_building_type’ => ‘office’,
      ’callback_url’ => ‘client.domain.dev’,
      ’sender_longitude’ => ‘optional’,
      ’sender_latitude’ => ‘optional’,
      ’txnid’ => ‘AAC-001’,
      ’digest’ => ‘9e82018733c3efbc4c6ead308d1b092c509107e3’,
      ’sender_remarks’ => ‘thiss is remarks’),
    CURLOPT_HTTPHEADER => array(
      ‘Accept: application/json’,
      ‘Content-Type: application/json’,
      ‘X-DELIVERYBOX-Auth: <token>
      ),
    ));
  $response = curl_exec($curl);
  curl_close($curl);
  echo $response;
RESPONSE

  {
data”: {
reference”: “9AMXVINYTK”,
digest”: “9e82018733c3efbc4c6ead308d1b092c509107e3”,
txnid”: “AAC-001”,
url”: “https://dgi-deliverybox-develop.multisyscorp.io/9AMXVINYTK”
    }
  }

Consignee Details

Delivery Order - Manual Courier Assignment

Confirm a delivery order from authorized subscriber’s consumer. Consignee’s address must be provided. Once confirmed, PGI payment link will be generated and it must be paid.

Accept:
application/json
Content-Type:
application/json

REQUIREDreceiver_first_namestring

First name of the receiver.


REQUIREDreceiver_last_namestring

Last name of the receiver.


REQUIREDreceiver_mobile_numberstring

Mobile number of the receiver.


REQUIREDreceiver_line1_addressstring

House No./Building No. of the receiver.


REQUIREDreceiver_streetstring

Street name of the receiver.


REQUIREDreceiver_zip_codestring

Zip Code of the receiver.


REQUIREDreceiver_building_typestring

Type of area if it’s office or residential where deliveries can be brought to.


OPTIONALreceiver_statestring

Province of the receiver.


OPTIONALreceiver_province_idstring

Province of the receiver.


REQUIREDreceiver_municipality_idstring

City/Municipality of the receiver (this is required if province_id is being passsed) (optional)


OPTIONALreceiver_barangay_idstring

Barangay ID of the receiver (this is required if province_id is being passsed)


OPTIONALreceiver_mobile_number_optionalstring

Secondary mobile number of the receiver.


OPTIONALreceiver_remarksstring

Additional remarks of the receiver.

POST
/api/v1/client/transactions/:reference

<?php
  $curl = curl_init();
  curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://ws.deliverybox.ph/api/v1/client/transactions/9AMXVINYTK',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'PUT',
    CURLOPT_POSTFIELDS => 'receiver_barangay_code=%201376020101&receiver_barangay_id=%2036781&receiver_building_type=%20residential&receiver_first_name=%20TEST&receiver_last_name=%20TEST&receiver_line1_address=%20123&receiver_mobile_number=%2009171111111&receiver_mobile_number_optional=%20&receiver_municipality_id=%201659&receiver_province_id=%2072&receiver_remarks=%20123&receiver_state=%20NCR%2C%20FOURTH%20DISTRICT&receiver_street=%20123&receiver_zip_code=%201226&toc=%201',
    CURLOPT_HTTPHEADER => array(
      'Accept: application/json',
      'Content-Type: application/json'
    ),
  ));
  $response = curl_exec($curl);
  curl_close($curl);
  echo $response;
RESPONSE

{
  “data”: {
    “type”: “transactions”,
    “id”: “111423”,
    “attributes”: {
      “reference”: “9AMXVINYTK”,
      “txnid”: “AAC-001”,
      “pod_ref_no”: null,
      “_tracking_no”: null,
      “order_details”: “”1 Qty Item””,
      “shipping_fee”: “200.0000”,
      “system_fee”: “0.00”,
      “sub_total”: “255.0000”,
      “status”: “waiting_for_payment”,
      “for_delivery”: 1,
      “payment_reference”: null,
      “payment_status”: null,
      “payment_channel”: null,
      “payment_gateway_url”: “https://pgi-staging.multipay.ph/MP5NWXQCXDMJVGWB0PE”,
      “total”: “200.0000”,
      “received_by”: null,
      “received_at”: null,
      “created_at”: “2021-05-17T15:05:46.000000Z”,
      “payment_at”: null,
      “assignment_at”: null,
      “assignment_status”: null,
      “remarks”: null
    },
    “links”: { “self”: “http://localhost/transactions/111423”}
  }
}

Assignment

Assign Partner Transaction by Batch

Manually assign an existing partner to specific orders.

Content-Type:
application/json
X-DELIVERYBOX-Auth:
<token>
Accept:
application/json

REQUIREDpartner_idstring

Existing courier ID.


REQUIREDtransaction_idsstring

Transaction IDs of receivers inside a batch

POST
/api/v1/client/transactions/assign-batch

<?php
  $curl = curl_init();
  curl_setopt_array($curl, array(
    CURLOPT_URL => ‘{{develop}}/api/v1/client/transactions/assign-batch’,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => ‘’,
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => ‘POST’,
    CURLOPT_POSTFIELDS =>’{
      “partner_id”:”19”,
      “transaction_ids”:{
        “0” : “113333”
      }
    }’,
    CURLOPT_HTTPHEADER => array(
      ‘Accept: application/json’,
      ‘Content-Type: application/json’,
      ‘X-DELIVERYBOX-Auth: <token>
      ),
    ));
    $response = curl_exec($curl);
    curl_close($curl);
    echo $response;

General

Get Parcel Types

Get all the list of parcel types.

Accept:
application/json
Content-Type:
application/json
X-DELIVERYBOX-Auth:
<token>
GET
/api/v1/client/parcel-types

<?php
  $curl = curl_init();
  curl_setopt_array($curl,
    array(
      CURLOPT_URL => ‘https://ws.deliverybox.ph/api/v1/client/parcel-types’,
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_ENCODING => ‘’,
      CURLOPT_MAXREDIRS => 10,
      CURLOPT_TIMEOUT => 0,
      CURLOPT_FOLLOWLOCATION => true,
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
      CURLOPT_CUSTOMREQUEST => ‘GET’,
      CURLOPT_HTTPHEADER => array(
        ‘Accept: application/json’,
        ‘Content-Type: application/json’,
        ‘X-DELIVERYBOX-Auth: <token>’
      ),
    )
  );
  $response = curl_exec($curl);
  curl_close($curl);
  echo $response;
RESPONSE

{
  “data”: [
    {
      “type”: “parcel_types”,
      “id”: “2”,
      “attributes”: {
        “name”: “Box”,
        “slug_code”: “box”,
        “description”: “Parcel box is a secure solution for your parcels that lets you receive even valuable packages such as electronics with peace of mind and the certainty that nothing will happen to them before you get home and bring them inside.”,
        “length”: “0.00”,
        “width”: “0.00”,
        “height”: “0.00”,
        “weight”: “0.00”,
        “unit”: “kg”
      },
      “links”: {
        “self”: “http://localhost/parcel_types/2”
      }
    },
    {
      “type”: “parcel_types”,
      “id”: “1”,
      “attributes”: {
        “name”: “Pouch”,
        “slug_code”: “pouch”,
        “description”: “A pouch is a small bag used as container of a parcel.”,
        “length”: “0.00”,
        “width”: “0.00”,
        “height”: “0.00”,
        “weight”: “0.00”,
        “unit”: “kg”
      },
      “links”: {
        “self”: “http://localhost/parcel_types/1”
      }
    }
  ],
  “meta”: {
    “pagination”: {
      “total”: 2,
      “count”: 2,
      “per_page”: 25,
      “current_page”: 1,
      “total_pages”: 1
    }
  },
  “links”: {
    “self”: “http://ws.deliverybox.ph/api/v1/client/parcel-types?page=1”,
    “first”: “http://ws.deliverybox.ph/api/v1/client/parcel-types?page=1”,
    “last”: “http://ws.deliverybox.ph/api/v1/client/parcel-types?page=1”
  }
}

Get Calculate Price

This information contains the delivery fee based on the location and parcel type.

Accept:
application/json
Content-Type:
application/json
X-DELIVERYBOX-Auth:
<token>

REQUIREDdigeststring

encrypted value = sha1(subtotal + txnId + header(‘X-DELIVERYBOX-Auth’))


REQUIREDorder_detailsstring

order details must be in array format [{“name”:”value”, ”price”:”price_value”, ”description”:”desc_value”, ”quantity”:”qty_value”}]


REQUIREDparcel_type_idstring

Parcel type of the item to be delivered.


REQUIREDpayment_methodstring

Payment method of the customer.


OPTIONALreceiver_barangay_idstring

Barangay ID of the receiver.


REQUIREDreceiver_building_typestring

Type of area if it’s office or residential where deliveries can be brought to.


REQUIREDreceiver_first_namestring

First name of the receiver.


REQUIREDreceiver_last_namestring

Last name of the receiver.


REQUIREDreceiver_latitudestring

Geo location value (latitude) from google maps.


REQUIREDreceiver_line1_addressstring

House number / Building number , Building Name of the sender.


REQUIREDreceiver_longitudestring

Geo location value (longitude) from google maps.


REQUIREDreceiver_mobile_numberstring

Mobile number of the receiver.


OPTIONALreceiver_municipalitystring

Municipality ID of the receiver.


REQUIREDreceiver_province_idstring

Province ID of the receiver.


REQUIREDreceiver_statestring

City of the receiver.


REQUIREDreceiver_streetstring

Street name of the recevier


REQUIREDreceiver_zip_codestring

Zip code of the receiver.


REQUIREDsender_building_typestring

Type of area if it’s office or residential where deliveries can be brought to.


OPTIONALsender_first_namestring

First name of the sender.


OPTIONALsender_last_namestring

Last name of the sender.


REQUIREDsender_latitudestring

Geo location value (latitude) from google maps.


REQUIREDsender_longitudestring

Geo location value (longitude) from google maps.


REQUIREDsender_zip_codestring

Zip Code of the sender.


REQUIREDsub_totalstring

Total price of the item to be delivered.


REQUIREDtxnidstring

Reference number from subscriber.

POST
/api/v1/client/price-calculate

<?php
  $curl = curl_init();
  curl_setopt_array($curl,
    array(
      CURLOPT_URL =>https://ws.deliverybox.ph/api/v1/client/price-calculate’,
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_ENCODING => ‘’,
      CURLOPT_MAXREDIRS => 10,
      CURLOPT_TIMEOUT => 0,
      CURLOPT_FOLLOWLOCATION => true,
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
      CURLOPT_CUSTOMREQUEST => ‘POST’,
      CURLOPT_POSTFIELDS =>’{
digest”: “fcfdc2183e939c8f3d46029f6ca6547e25478e07”,
order_details”: “Testing Product 1 - 1 pc(s) - ₱ 100.00 \n “,
parcel_type_id”: “1”, “payment_method”: “NON_COD”,
receiver_barangay_id”: “TEST1234”,
receiver_building_type”: “office”,
receiver_first_name”: “Juan”,
receiver_last_name”: “Dela Cruz”,
receiver_latitude”: “14.6995958”,
receiver_line1_address”: “Elliptical Rd, Diliman, Quezon City, Metro Manila”,
receiver_longitude”: “121.0825117”,
receiver_mobile_number”: “09171111111”,
receiver_municipality_id”: “TEST1234”,
receiver_province_id”: “1234”,
receiver_state”: “Quezon City”,
receiver_street”: “Elliptical Rd”,
receiver_zip_code”: “1104”,
sender_building_type”: “office”,
sender_first_name”: “Juan”,
sender_last_name”: “Dela Cruz”,
sender_latitude”: “14.4931584”,
sender_longitude”: “121.0024706”,
sender_zip_code”: “1709”,
sub_total”: 100,
txnid”: “abc”
      }’,
      CURLOPT_HTTPHEADER => array(
Accept: application/json’,
Content-Type: application/json’,
X-DELIVERYBOX-Auth: <token>’
      ),
    ));
    $response = curl_exec($curl);
    curl_close($curl);
    echo $response;
RESPONSE

  {
digest”: “fcfdc2183e939c8f3d46029f6ca6547e25478e07”,
order_details”: “Testing Product 1 - 1 pc(s) - ₱ 100.00 
 “,
parcel_type_id”: “1”,
payment_method”: “NON_COD”,
receiver_barangay_id”: “TEST1234”,
receiver_building_type”: “office”,
receiver_first_name”: “Juan”,
receiver_last_name”: “Dela Cruz”,
receiver_latitude”: “14.6995958”,
receiver_line1_address”: “Elliptical Rd, Diliman, Quezon City, Metro Manila”,
receiver_longitude”: “121.0825117”,
receiver_mobile_number”: “09171111111”,
receiver_municipality_id”: “TEST1234”,
receiver_province_id”: “1234”,
receiver_state”: “Quezon City”,
receiver_street”: “Elliptical Rd”,
receiver_zip_code”: “1104”,
sender_building_type”: “office”,
sender_first_name”: “Juan”,
sender_last_name”: “Dela Cruz”,
sender_latitude”: “14.4931584”,
sender_longitude”: “121.0024706”,
sender_zip_code”: “1709”,
sub_total”: 100,
txnid”: “abc”
  }
  

Search Transaction

Get transaction details. Transaction id must be provided.

Accept:
application/json
Content-Type:
application/json
X-DELIVERYBOX-Auth:
<token>
GET
/api/v1/client/transactions/:reference

<?php
  $curl = curl_init();
  curl_setopt_array($curl, array(
      CURLOPT_URL => ‘https://ws.deliverybox.ph/api/v1/client/transactions/%7Breference%7D’,
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_ENCODING => ‘’,
      CURLOPT_MAXREDIRS => 10,
      CURLOPT_TIMEOUT => 0,
      CURLOPT_FOLLOWLOCATION => true,
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
      CURLOPT_CUSTOMREQUEST => ‘GET’,
      CURLOPT_HTTPHEADER => array(
        ‘Accept: application/json’,
        ‘Content-Type: application/json’,
        ‘X-DELIVERYBOX-Auth: <token>’
      ),
  ));
  $response = curl_exec($curl);
  curl_close($curl);
  echo $response;

Get Courier Details

This parameter will list down the courier details or information who is going to deliver the order.

Accept:
application/json
GET
/api/v1/client/transactions/:reference

<?php
  $curl = curl_init();
  curl_setopt_array($curl,
    array(
      CURLOPT_URL => ‘https://deliverybox-ws.multisyscorp.io/api/v1/client/courier-details/GSAP0T6QVU’,
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_ENCODING => ‘’,
      CURLOPT_MAXREDIRS => 10,
      CURLOPT_TIMEOUT => 0,
      CURLOPT_FOLLOWLOCATION => true,
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
      CURLOPT_CUSTOMREQUEST => ‘GET’,
      CURLOPT_HTTPHEADER => array(
        ‘Accept: application/json’
      ),
    ));
  $response = curl_exec($curl);
  curl_close($curl);
  echo $response;

Cancel Transaction

In order to cancel an order, the transaction shouldn’t be confirmed. Once the order has been confirmed, cancellation of order is impossible.

Accept:
application/json
Content-Type:
application/json
X-DELIVERYBOX-Auth:
<token>
PUT
/api/v1/client/transactions/:reference/cancel

<?php
  $curl = curl_init();
  curl_setopt_array($curl,
    array(
      CURLOPT_URL =>https://ws.deliverybox.ph/api/v1/client/transactions/%7Breference%7D/cancel’,
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_ENCODING => ‘’,
      CURLOPT_MAXREDIRS => 10,
      CURLOPT_TIMEOUT => 0,
      CURLOPT_FOLLOWLOCATION => true,
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
      CURLOPT_CUSTOMREQUEST => ‘PUT’,
      CURLOPT_POSTFIELDS =>’{
digest”: “fcfdc2183e939c8f3d46029f6ca6547e25478e07”,
order_details”: “Testing Product 1 - 1 pc(s) - ₱ 100.00 \n “,
parcel_type_id”: “1”,
payment_method”: “NON-COD”,
receiver_barangay_id”: “TEST1234”,
receiver_building_type”: “office”,
receiver_first_name”: “Juan”,
receiver_last_name”: “Dela Cruz”,
receiver_latitude”: “14.6995958”,
receiver_line1_address”: “Elliptical Rd, Diliman, Quezon City, Metro Manila”,
receiver_longitude”: “121.0825117”,
receiver_mobile_number”: “09171111111”,
receiver_municipality_id”: “TEST1234”,
receiver_province_id”: “1234”,
receiver_state”: “Quezon City”,
receiver_street”: “Elliptical Rd”,
receiver_zip_code”: “1104”,
sender_building_type”: “office”,
sender_first_name”: “Juan”,
sender_last_name”: “Dela Cruz”,
sender_latitude”: “14.4931584”,
sender_longitude”: “121.0024706”,
sender_zip_code”: “1709”,
sub_total”: 100,
        "txnid": "abc"
      }',
      CURLOPT_HTTPHEADER => array(
        'Accept: application/json',
        'Content-Type: application/json',
        'X-DELIVERYBOX-Auth: d389a2fdfaff0c68e344244ac58057ae'
      ),
    ));
    $response = curl_exec($curl);
    curl_close($curl);
    echo $response;

Track Order By Reference

Get transaction details. Transaction id must be provided.

Accept:
application/json
Content-Type:
application/json
X-DELIVERYBOX-Auth:
<token>
GET
/api/v1/client/order-tracking/:reference

<?php
  $curl = curl_init();
  curl_setopt_array($curl,
    array(
      CURLOPT_URL => ‘https://ws.deliverybox.ph/api/v1/client/order-tracking/%7Breference%7D’,
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_ENCODING => ‘’,
      CURLOPT_MAXREDIRS => 10,
      CURLOPT_TIMEOUT => 0,
      CURLOPT_FOLLOWLOCATION => true,
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
      CURLOPT_CUSTOMREQUEST => ‘GET’,
      CURLOPT_HTTPHEADER => array(
        ‘Accept: application/json’,
        ‘Content-Type: application/json’,
        ‘X-DELIVERYBOX-Auth: <token>’
      ),
    ));
    $response = curl_exec($curl);
    curl_close($curl);
    echo $response;

Support

For any questions/queries, our team will be happy to assist you through the entire process or you may contact the emails mentioned below.

Steps on how to go live

  • Engage with our business development officers:
    - Uriah Idriz Velunta (uicvelunta@multisyscorp.com)
    - Gabriel Linatoc (gmlinatoc@multisyscorp.com)
  • Your account that has been registered will be validated by our team.
  • Execute all the happy and unhappy paths by integrating the DeliveryBox API.
  • After the happy path and unhappy paths are successful, you can request access to our business development team for API production keys.
  • You can refer to API documentation for production endpoints.
  • Our team will create a Viber group chat for any technical concerns