0% found this document useful (0 votes)
158 views19 pages

(SAPX) API Documentation Order v2.1

The API documentation outlines the endpoints for creating orders with SAP Express, including methods for retrieving coverage areas, shipment content types, shipment costs, and requesting pickups. It provides details on required credentials, request parameters, and expected responses for each endpoint. The documentation is structured to assist developers in integrating with the SAP Express system effectively.

Uploaded by

farhan091296
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
158 views19 pages

(SAPX) API Documentation Order v2.1

The API documentation outlines the endpoints for creating orders with SAP Express, including methods for retrieving coverage areas, shipment content types, shipment costs, and requesting pickups. It provides details on required credentials, request parameters, and expected responses for each endpoint. The documentation is structured to assist developers in integrating with the SAP Express system effectively.

Uploaded by

farhan091296
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

API DOCUMENTATION

API CREATE ORDER

SAP EXPRESS

Version 2.1
⮚ HOST

Host Staging : http://apisanbox.coresyssap.com/v2/

Host Production : https://api.coresyssap.com/v2/

Host Tracking Production : https://track.coresyssap.com/v2/

⮚ CREDENTIALS
The following are credentials that you can use for trial in SAP Express staging server. Please
NOTE that production credentials will be given to you after you finish request pickup trial at our
staging server.

api_key (staging) : • DEV_m4rK3tPlac3#_2019 (courier assigment)

• DEV_wareHous3#_2019 (drop off / handover)

customer_code (staging): • DEV001 (COD Account)

• DEV000 (NON COD Account)


1. GET COVERAGE AREA

Method : GET
Endpoint : /master/district/get

Description
This endpoint contains information about SAP Express coverage area. Some
parameters in this endpoint are used to fill parameter on different endpoint. For example,
district code are used to fill pickup_district_code and destination_district_code parameters in
the request pickup endpoint.

Header :

KEY VALUE PARAMETER OPTION


api_key <api_key> Mandatory
Content-Type application/json Mandatory

Params :

KEY SAMPLE VALUE PARAMETER OPTION

provinsi_name DKI JAKARTA Optional

city_name jakarta Optional

district_name JAKARTA UTARA Optional

Response Success :

{
"status": "success",
"msg": "",
"data": [
{
"city_code": "JK11",
"district_code": "JK11",
"district_name": "JAKARTA UTARA",
"zone_code": "ZBJK1101",
"provinsi_code": "JK",
"city_name": "JAKARTA UTARA",
"tlc_branch_code": "JUA",
"provinsi_name": "DKI JAKARTA"
}
]
}

Response Fail :

{
"status": false,
"error": "Invalid API key "
}

2. GET SHIPMENT CONTENT TYPE

Method : GET
Endpoint : /master/shipment_content/get

Description
This endpoint contains information about the content of the package that you want
to send

Header :

KEY VALUE PARAMETER OPTION


api_key <api_key> Mandatory
Content-Type application/json Mandatory

Params :

KEY SAMPLE VALUE PARAMETER OPTION

shipment_type_code SHTDC Optional

Response Success :

{
"status": true,
"data": [
{
"shipment_type_code": "SHTDC",
"shipment_content_code": "SHTDC",
"shipment_content_name": "DOKUMEN"
},
{
"shipment_type_code": "SHTPC",
"shipment_content_code": "SHTPC",
"shipment_content_name": "PAKET"
}
]
}

Response Fail :

{
"status": false,
"error": "Invalid API key "
}

3. GET SHIPMENT COST PUBLISH

Method : POST
Endpoint : /master/shipment_cost

Description
This endpoint is used to get shipment costs from SAP Express. Please NOTE that for
this endpoint we have a certain configuration to meet your expectation for getting shipment
costs. Please contact the developer of your chosen configuration. Here are the details of the
configuration that you can choose.
⮚ SAP Express Website, This configuration gives you feedback the shipment cost
that is the exact same as the SAP Express Website provides.
⮚ Publish + Discount, this configuration gives you feedback the shipment cost that
is the exact same as the SAP Express Website provides minus the discount that
written in your contract agreement.
⮚ Publish FRP, This configuration gives you feedback the shipment cost that is
written in your contract agreement.
Header :

KEY VALUE PARAMETER OPTION


api_key <api_key> Mandatory
Content-Type application/json Mandatory

Body Payload :

{
"origin":"DEV",
"destination":"DEV",
"weight": "2.1",
"customer_code" : "DEV000",
"packing_type_code": "ACH02",
"volumetric" : "10x10x10",
"insurance_type_code" : "INS01",
"item_value" : "500000"
}

KEY SAMPLE VALUE PARAMETER OPTION DESCRIPTION

origin DEV Mandatory The district code


of the package
gets picked up

destination DEV Mandatory The district code


of the package
destination

weight 2 Mandatory The weight of


the package in
kilograms

customer_code DEV000 Mandatory Customer


accounts that
already
registered in SAP
Express system

packing_type_code ACH02 Optional Packing type


code
volumetric 10x10x10 Optional The volume of
the goods.
Length x width x
height (Pxlxt)

insurance_type_code INS01 Optional Insurance type


code

item_value 500000 Optional The values of the


goods/package
in rupiah

Packing Type Code :

PACKING TYPE CODE PACKING TYPE NAME

ACH02 PACKING KAYU

ACH03 PACKING KARDUS ROKOK

ACH04 PACKING FULL

ACH05 PACKING BUBLE

ACH06 PACKING KARDUS AIR MINERAL

Insurance Type Code

INSURANCE TYPE CODE INSURANCE TYPE NAME

INS01 ASURANSI TMT PAKET

INS02 ASURANSI TMT DOKUMEN BERHARGA

Response Success
{
"status": "success",
"data": {
"origin": "JK00",
"destination": "JK00",
"coverage_cod": true,
"services": [
{
"minimum_kilo": "5",
"insurance_cost": 1500,
"insurance_admin_cost": 2000,
"volumetric_kg": 1,
"packing_cost": "30000",
"weight": 2,
"final_weight": "5",
"kilo_divider": "4000",
"cost": "4500",
"discount": "0%",
"total_cost": 56000,
"service_type_code": "DRGREG",
"service_type_name": "REGULAR DARAT",
"sla": "2 - 3 Hari"
},
{
"minimum_kilo": 1,
"insurance_cost": 1500,
"insurance_admin_cost": 2000,
"volumetric_kg": 1,
"packing_cost": "25000",
"weight": 2,
"final_weight": 2,
"kilo_divider": "6000",
"cost": "8000",
"discount": "0%",
"total_cost": 44500,
"service_type_code": "UDRREG",
"service_type_name": "REGULER",
"sla": "1 - 2 Hari"
},
{
"minimum_kilo": 1,
"insurance_cost": 1500,
"insurance_admin_cost": 2000,
"volumetric_kg": 1,
"packing_cost": "25000",
"weight": 2,
"final_weight": 2,
"kilo_divider": "6000",
"cost": "15000",
"discount": "0%",
"total_cost": 58500,
"service_type_code": "UDRONS",
"service_type_name": "ONE DAY SERVICE",
"sla": "1 - 2 Hari"
},
{
"minimum_kilo": 1,
"insurance_cost": 1500,
"insurance_admin_cost": 2000,
"volumetric_kg": 1,
"packing_cost": "25000",
"weight": 2,
"final_weight": 2,
"kilo_divider": "6000",
"cost": "34000",
"discount": "0%",
"total_cost": 96500,
"service_type_code": "UDRSDS",
"service_type_name": "SAME DAY SERVICE",
"sla": "0 - 1 Hari"
}
]
},
"msg": ""
}

Response Fail

{
"status": "fail",
"data": [],
"msg": "Harga tidak ditemukan"
}

4. REQUEST PICKUP / ORDER


Method : POST
Endpoint : /shipment/pickup/create

Description
This endpoint is used to request pickup to SAP. SAP will schedule pick up of your
package.

Header :

KEY VALUE PARAMETER OPTION


api_key <api_key> Mandatory
Content-Type application/json Mandatory

Body Parameter :

{
"customer_code": "DEV001",
"reference_no": "AWB-APIV2-44",
"awb_no" : "AWB-APIV2-44",
"service_type_code": "UDRREG",
"pickup_place" : "1",
"koli": "3",
"weight": 1,
"volumetric": "10x60x60",
"item_value": "500000",
"destination_district_code": "DEV",
"pickup_name": "Bee Shop",
"pickup_address": "Jl. Pengadegan Barat Raya No.6, RT.1/RW.5, Pengadegan
",
"pickup_phone": "087886568734",
"pickup_email": "[email protected]",
"pickup_contact": "Bee Shop",
"pickup_district_code": "DEV",
"shipment_type_code": "SHTPC",
"shipment_content_code": "SHTPC",
"description_item": "",
"packing_type_code": "",
"cod_value": "100",
"shipper_name": "Bee Shop",
"shipper_address": "Jl. Pengadegan Barat Raya No.6, RT.1/RW.5, Pengadega
n",
"shipper_phone": "087886568734",
"shipper_contact": "Bee Shop",
"receiver_name": "Gani Dino",
"receiver_address": "Grande Village Residence 1 Blok B-6",
"receiver_phone": "082110286705",
"receiver_contact": "Gani Dino"
}
Detail Parameter

Parameter Name Parameter Type Default Sample Description


Option Length Values Values

customer_code Mandatory string(50) - BOO01 matching with


customer code which
already registered in
SAP system
awb_no Optional string(20) - ZLG201801 Airwaybill has
0000014 registered in our
system
reference_no Mandatory string(16) - BL00000000 Contain any value
000362 that is considered
unique by
B2B/Ecommerce
pickup_name Mandatory string(10 - ELEKTRO `
0) SHOP
pickup_address Mandatory string(20 - KRAMAT Pickup Address
0) ASEM RAYA
N0. 6,
pickup_phone Mandatory string(20) - 812123456 Pickup Phone
78
pickup_place Mandatory int(5) 1 or 2 1 = Pickup , 2 = Drop
Off/ Handover
“note : can be setup
as default Api_key or
added on
Pickup_place
parameter”
pickup_email Optional string(50) - putri@gmai Pickup Email
l.com
pickup_postal_code Optional int(5) - 13120 Pickup Postal Code
pickup_contact Optional string(10 - JASON Pickup Contact
0)
pickup_latitude Optional string(50) - 21899900 Pickup address
latitude coordinate
pickup_longitude Optional string(50) - -6.9129488 Pickup address
longitude coordinate
pickup_district_code Mandatory string(6) - JK0701 district_code of
pickup origin
(obtained from api
:/master/district/get)
service_type_code Mandatory string(6) - UDRREG service code that are
used in the process of
delivery of goods
(obtained from api :
/master/service_type
/get)
koli Mandatory integer(9) - 1 the number of koli in
one shipment
weight Mandatory integer(9) - 10 weight of goods in
one shipment
(kilogram)
volumetric Mandatory string(50) - 10x60x60 volumetric of goods in
one shipment
shipment_type_code Mandatory string(5) - SHTPC SHTDC = DOCUMENT,
SHTPC = PACKAGE
shipment_content_c Optional string(5) SHT86 SHT86 =
ode MAJALAH/MAGAZINE
(master/shipment_co
ntent)
shipment_label_flag Optional int(1) 0 0 0:False, 1:True
description_item Optional sting(200) null ELEKTRONIK Description
packing_type_code Optional string(5) null ACH02 ACH02= PAKING
KAYU,
ACH03=PACKING
KARDUS / BUSA
FOAM,
ACH04=PACKING FULL
item_value Optional Float 0 15250 Goods Value
insurance_type_code Optional string(10) - INS01 Insurance Code
(INS01=ASURANSI
TMT PAKET,
INS02=ASURANSI TMT
DOKUMEN
BERHARGA)
cod_value Optional Float COD Price
“note : If flag = 2, then
cod_value become
mandatory”
shipper_name Mandatory string(10 - ELEKTRO Name of shipper
0) SHOP
shipper_address Mandatory string(20 - KRAMAT Shipper address
0) ASEM RAYA
N0. 6, UTAN
KAYU
SELATAN,
JAKARTA
TIMUR
13120
shipper_phone Mandatory string(20) - 812123456 Shipper Phone
78 Number
shipper_email Optional string(50) null elektro@g Shipper email address
mail.com
shipper_postal_code Optional int(5) null 13120 Shipper Postal Code /
Zip Code
shipper_contact Optional string(10 null JASON Shipper contact
0)
destination_district_ Mandatory string(6) - JK0703 district_code of which
code receiver destination
(obtained from api :
/master/district/get)
receiver_name Mandatory string(10 - DESWANDA Receiver Name
0) NI PUTRI
receiver_address Mandatory string(20 - JALAN Receiver Address
0) PANJANG
NO. 08,
JAKARTA
BARAT
receiver_phone Mandatory string(20) - 856123456 Receiver Phone
78 Number
receiver_email Optional string(50) null putri@gmai Receiver Email
l.com Address
receiver_postal_code Optional int(5) null 13120 Receiver Postal Code
/ Zip Code
receiver_contact Optional string(10 null PUTRI Receiver Contact
0)

Response Success

{
"status": "success",
"data": {
"awb_no": "AWB-APIV2-200",
"reference_no": "AWB-APIV2-200",
"origin_branch_code": "DEV",
"destination_branch_code": "DEV",
"tlc_branch_code": "DEV",
"label": "http://apisanbox.coresyssap.com/shipment/label/printout?a
wb_no=AWB-APIV2-200&api_key=DEV_m4rK3tPlac3%23_2019"
},
"msg": "Pickup transfer success"
}

Response Fail

{
"status": "fail",
"msg": "REFERENCE NO. SUDAH ADA. MOHON GANTI DENGAN YANG LAIN."
}

5. CANCEL PICKUP / ORDER

Method : POST
Endpoint : /shipment/pickup/cancel

Description
This endpoint is used for cancel the request order.
*Note : Status on the AWB that you want to cancel order max ENTRY VERIFIED

Header :

KEY VALUE PARAMETER OPTION


api_key <api_key> Mandatory
Content-Type application/json Mandatory

Body Parameter :

{
"awb_no" : "AWB-APIV2-201",
"desc" : "Pengirim tidak jadi mengirim barang"
}

Response Success

{
"status": "success",
"msg": "Cancel Order berhasil di lakukan pada tanggal dan jam [2023-
05-22 09:31:46]"
}

Response Fail

{
"status": "fail",
"msg": "Fail, AWB yang ingin dicancel tidak ditemukan."
}

6. GET TRACKING ORDER

Method : GET
Endpoint : /shipment/tracking
Description :
This endpoint gives you information on the package journeys. You can track based
on awb number or reference number. Please choose one of the option by putting it on the
params.

*Note : for production you must use host https://track.coresyssap.com/v2/

Header :

KEY VALUE PARAMETER OPTION


api_key <api_key> Mandatory
Content-Type application/json Mandatory

Params :

KEY SAMPLE VALUE PARAMETER OPTION

awb_no AWB-APIV2-021 Optional (Choose Between


awb_no or reference_no)

reference_no AWB-APIV2-021 Optional (Choose Between


awb_no or reference_no)

Response Success :

{
"status": "success",
"msg": "",
"data": [
{
"awb_no": "AWB-APIV2-021",
"reference_no": "AWB-APIV2-021",
"shipper_name": "BEE SHOP",
"receiver_name": "GANI DINO",
"rowstate": "21",
"rowstate_name": "ENTRI (SEDANG DI PICKUP)",
"rowstate_web": "Proses Pick Up",
"pod_status_code": null,
"pod_status_name": null,
"description": "[KURIR: KURIR_DEVELOPMENT] [ALAMAT PICKUP: JL.
PENGADEGAN BARAT RAYA NO.6, RT.1/RW.5, PENGADEGAN]",
"kilo": "6",
"koli": "3",
"volumetric": "10x60x60",
"create_date": "2023-05-19 17:10:07",
"user_input": "CGK_CHOLID",
"photo_pickup": [],
"signature_pickup": [],
"photo_pod": [],
"signature_pod": [],
"current_branch_name": "DEVELOPMENT"
},
{
"awb_no": "AWB-APIV2-021",
"reference_no": "AWB-APIV2-021",
"shipper_name": "BEE SHOP",
"receiver_name": "GANI DINO",
"rowstate": "3",
"rowstate_name": "ENTRI VERIFIED",
"rowstate_web": "Verifikasi Paket",
"pod_status_code": null,
"pod_status_name": null,
"description": "SUDAH DI KONFIRMASI DAN VERIFIKASI OLEH USER:
CGK_CHOLID",
"kilo": "6",
"koli": "3",
"volumetric": "10x60x60",
"create_date": "2023-05-19 17:10:20",
"user_input": "CGK_CHOLID",
"photo_pickup": [],
"signature_pickup": [],
"photo_pod": [],
"signature_pod": [],
"current_branch_name": "DEVELOPMENT"
},
{
"awb_no": "AWB-APIV2-021",
"reference_no": "AWB-APIV2-021",
"shipper_name": "BEE SHOP",
"receiver_name": "GANI DINO",
"rowstate": "4",
"rowstate_name": "MANIFEST OUTGOING",
"rowstate_web": "Keluar Dari DEVELOPMENT",
"pod_status_code": null,
"pod_status_name": null,
"description": "OK",
"kilo": "6",
"koli": "3",
"volumetric": "10x60x60",
"create_date": "2023-05-19 17:10:50",
"user_input": "CGK_CHOLID",
"photo_pickup": [],
"signature_pickup": [],
"photo_pod": [],
"signature_pod": [],
"current_branch_name": "DEVELOPMENT"
},
{
"awb_no": "AWB-APIV2-021",
"reference_no": "AWB-APIV2-021",
"shipper_name": "BEE SHOP",
"receiver_name": "GANI DINO",
"rowstate": "7",
"rowstate_name": "INCOMING",
"rowstate_web": "Sampai Di DEVELOPMENT",
"pod_status_code": null,
"pod_status_name": null,
"description": null,
"kilo": "6",
"koli": "3",
"volumetric": "10x60x60",
"create_date": "2023-05-19 17:11:05",
"user_input": "CGK_CHOLID",
"photo_pickup": [],
"signature_pickup": [],
"photo_pod": [],
"signature_pod": [],
"current_branch_name": "DEVELOPMENT"
},
{
"awb_no": "AWB-APIV2-021",
"reference_no": "AWB-APIV2-021",
"shipper_name": "BEE SHOP",
"receiver_name": "GANI DINO",
"rowstate": "8",
"rowstate_name": "DELIVERY ",
"rowstate_web": "Paket Diantar Kurir By KURIR_DEVELOPMENT",
"pod_status_code": null,
"pod_status_name": null,
"description": "KURIR: KURIR_DEVELOPMENT KET: [ KURIR : KOTA ]
",
"kilo": "6",
"koli": "3",
"volumetric": "10x60x60",
"create_date": "2023-05-19 17:11:25",
"user_input": "CGK_CHOLID",
"photo_pickup": [],
"signature_pickup": [],
"photo_pod": [],
"signature_pod": [],
"current_branch_name": "DEVELOPMENT"
},
{
"awb_no": "AWB-APIV2-021",
"reference_no": "AWB-APIV2-021",
"shipper_name": "BEE SHOP",
"receiver_name": "GANI DINO",
"rowstate": "9",
"rowstate_name": "POD - DELIVERED",
"rowstate_web": "Paket Telah Diterima Oleh [PENERIMA] [ KET :
PENERIMA]",
"pod_status_code": "DL",
"pod_status_name": "DITERIMA OLEH",
"description": "[KURIR: KURIR_DEVELOPMENT] [PENERIMA: PENERIMA
] [HUB: PENERIMA LANGSUNG] 17:15], [STATUS: DELIVERED - DL - DITERIMA OLEH
], KETERANGAN: TEST",
"kilo": "6",
"koli": "3",
"volumetric": "10x60x60",
"create_date": "2023-05-19 17:15:00",
"user_input": "CGK_CHOLID",
"photo_pickup": [],
"signature_pickup": [],
"photo_pod": [],
"signature_pod": [],
"current_branch_name": "DEVELOPMENT"
}
]
}

Response Fail :

{
"status": false,
"error": "Invalid API key "
}

7. LIST OF SAP SERVICES


The following is a list of services that we have in SAP. Please NOTE that some
of the following services may not appear in certain region. For detail regarding
service coverage please contact SAP sales or refer to shipment cost endpoint.

NO SERVICE NAME SERVICE TYPE DESCRIPTION

1 REG UDRREG REGULER

2 ODS UDRONS ONE DAY SERVICE

3 SDS UDRSDS SAME DAY SERVICE

4 DRGREG DARAT REGULAR DARAT/CARGO

8. LIST CHECK POINT


The following is a list of check points that we have in every process of shipping goods

No. STATUS PENJELASAN

1 ENTRI (SEDANG DI PICKUP) KURIR SEDANG MENJEMPUT PAKET


2 ENTRI (PENDING PICKUP) PICK UP DIJADWALKAN KEMBALI
3 ENTRI (SEDANG PICKUP ULANG) KURIR SEDANG MENJEMPUT ULANG PAKET
4 PICKED UP PAKET TELAH DIPICK UP OLEH KURIR
5 VOID PAKET TELAH DIBATALKAN
6 VOID PICKUP PROSES PICK UP TELAH DIBATALKAN
7 ENTRI VERIFIED VERIFIKASI PAKET
8 MANIFEST OUTGOING KELUAR DARI [KANTOR ASAL]
9 OUTGOING SMU DALAM PENERBANGAN

10 INCOMING TIBA DI CABANG TUJUAN


11 DELIVERY PAKET DIANTAR KURIR
12 POD - DELIVERED PAKET TELAH DITERIMA
13 POD - UNDELIVERED PAKET BELUM BERHASIL TERKIRIM
14 OUTGOING RETURN KELUAR KE CABANG ASAL
15 INCOMING RETURN TIBA DI CABANG ASAL
16 DELIVERY RETURN DIKEMBALIKAN KE CABANG
17 SHIPMENT RETURN TO CLIENT DIKEMBALIKAN KE CUSTOMER
Version History

Version Date PIC Feature


2.1 17/10/2023 Cholid • Add current branch parameter in tracking
endpoint

You might also like