Report Logistics Information

If you pay attention to the logistics information of the transaction, you can configure the logistics reporting URL, and SHOPLINE will carry out the delivery operation at the merchant, and after filling in the necessary information, it will actively initiate an HTTP call to your logistics reporting URL. The following figure illustrates the payment app How the Logistics reporting process with SHOPLINE works:

image.png

  1. The merchant handles the shipment.
  2. SHOPLINE sends a logistics information reporting request to the payment app.
  3. The payment app returns SHOPLINE to process the response result.

Request logistics reporting interface

When logistics reporting is required, SHOPLINE will request the Logistics reporting Url provided by you through Http-Post;

Example request header

Corresponds to Http Request Header

pay-api-version: 1.0.0
pay-api-idempotency-key: TESTKEYKEYKEY
pay-api-signature: SIGNSIGNSIGN
pay-api-timestamp: 1665632758606000
FieldIs it required?Description
pay-api-versionYesThe API VERSION you filled in when configuring the payment app extension
pay-api-idempotency-keyYesidempotent key
pay-api-signatureYesSignature value
pay-api-timestampYesTimestamp when the request was initiated

Example request body

Corresponds to Http Request Body

{
"channelOrderTransactionId": "test_d0e822d9fd27",
"trackingList": [
{
"trackingNo": "test_91dd2e1a7af1",
"site": "test_46bec7ce1c23",
"handler": "test_4d545f9d9966",
"trackingStatus": "test_5275b24a93aa",
"carrier": "test_1ed2b4acffcc"
}
]
}
FieldTypeRequired?Description
channelOrderTransactionIdstringYesChannel ID of the payment order
trackingListArrayYes
trackingList[0].trackingNostringYesshipment number
trackingList[0].sitestringYesLogistics website
trackingList[0].handlerstringNoHandler to adds the logistic information
trackingList[0].trackingStatusstringYesLogistics status
  • 01: waiting for collection
  • 02: Cancellation of shipment
  • 03: Shipped
  • 04: In transit
  • 05: Delivery is successful, waiting for the user to receive the goods
  • 06: Rejection, the goods will be returned by the original route
  • 07: on hold (due to weather, customs clearance, etc.)
  • trackingList[0].carrierstringYesLogistic carrier

    Response header example

    SHOPLINE must receive the expected result before it considers the call successful. If the expected result is not returned, SHOPLINE will re-initiate the request with the same parameters after a certain period of time until it finally gets the expected response or reaches the maximum number of retries.
    For different logistics states of the same logistics order number, SHOPLINE may report logistics information multiple times, and the payment app should handle these requests correctly;

    Corresponds to Http Response Header

    pay-api-signature: SIGNSIGNSIGN
    FieldRequired?Description
    pay-api-signatureYesSignature Value

    Response body example

    Corresponds to Http Responese Body

    {
    "returnCode": "test_ca4e7c8fe42b",
    "returnMessage": "test_c76c81cec909",
    "returnMessageId": "test_139a03d91582"
    }
    FieldTypeRequired?Description
    returnCodestringYesinterface status code
    SUCCESS: successful request
    returnMessagestringNoFailure reasons
    returnMessageIdstringNoChannel response identifier UUID, such as traceId
    Was this article helpful to you?

    Error loading component.

    Error loading component.