victorycodedev/shipday

Shipday PHP SDK 为 PHP 应用和脚本提供了更便捷的访问 Shipday API 的方式。

1.1.0 2023-05-08 21:23 UTC

This package is auto-updated.

Last update: 2024-09-09 00:36:24 UTC


README

Shipday PHP SDK 为 PHP 应用和脚本提供了更便捷的访问 Shipday API 的方式。

安装

使用包管理器 composer 安装此包。

composer require victorycodedev/shipday

使用方法

use Victorycodedev\Shipday\Delivery;

 $delivery = new Delivery($apiKey);

 // Sign up on https://www.shipday.com to grab your API key.

配送订单

插入订单

//INSERT AN ORDER
 $orderDetails = [
        "orderNumber" => "99qT5A",
        "customerName" => "Mr. Jhon Mason",
        "customerAddress" => "556 Crestlake Dr, San Francisco, CA 94132, USA",
        "customerEmail" => "jhonMason@gmail.com",
        "customerPhoneNumber" => "+14152392212",
        "restaurantName" => "Popeyes Louisiana Kitchen",
        "restaurantAddress" => "890 Geneva Ave, San Francisco, CA 94112, United States",
        "restaurantPhoneNumber" => "+14152392013",
        "expectedDeliveryDate" => "2021-06-03",
        "expectedPickupTime" => "17:45:00",
        "expectedDeliveryTime" => "19:22:00",
        "pickupLatitude" => 41.53867,
        "pickupLongitude" => -72.0827,
        "deliveryLatitude" => 41.53867,
        "deliveryLongitude" => -72.0827,
        "tips" => 2.5,
        "tax" => 1.5,
        "discountAmount" => 1.5,
        "deliveryFee" => 3,
        "totalOrderCost" => 13.47,
        "deliveryInstruction" => "fast",
        "orderSource" => "Seamless",
        "additionalId" => "4532",
        "clientRestaurantId" => 12,
        "paymentMethod" => "credit_card",
        "creditCardType" => "visa",
        "creditCardId" => 1234
    ];

 $order = $delivery->insertOrder($orderDetails);

编辑/更新订单

$orderId = 002002;

$details = [
    'orderId' => $orderId,
    ....
];

$response = $delivery->updateOrder($orderId, $details);

检索活动订单

$orders = $delivery->getActiveOrders();

检索订单详情

$order = $delivery->getOrderDetails('test order 1')[0];

订单查询

$orders = $delivery->queryOrder([
    ...
]);

删除订单

$delivery->deleteOrder('ENTER ORDER ID');

将订单分配给司机

$delivery->assignOrderToDriver('ENTER ORDER ID', 'ENTER CARRIER ID');

订单状态更新

$response = $delivery->updateOrderStatus('ENTER ORDER ID', [
   'status' => 'STARTED',
]);

订单准备取货

$delivery->readyToPickup('ENTER ORDER ID');

添加承运商/司机

$driver = $delivery->addDriver([...]);

检索承运商

$drivers = $delivery->drivers();

检索单个承运商

$driver = $delivery->getDriverDetails('Enter carrierId');

删除承运商

$response = $delivery->deleteDriver('CARRIER ID');

即时配送

use Victorycodedev\Shipday\OnDemandDelivery;

$ondemandDelivery = new OnDemandDelivery($apiKey);

 // Sign up on https://www.shipday.com to grab your API key.

服务:获取可用的第三方配送服务提供商列表

$response = $ondemandDelivery->services();

估算:从第三方服务提供商获取估算(服务可用性、价格、等待时间等。)

$response = $ondemandDelivery->estimate('ORDER ID');

分配:分配给特定的第三方配送服务提供商。通常在获取估算后进行。

$response = $ondemandDelivery->assign([
    //... KEY VALUE PAIR PAYLOAD
]);

详情:获取分配给第三方服务提供商的订单和状态详情。

$response = $ondemandDelivery->getDetails('ORDER ID');

取消已分配订单

$response = $ondemandDelivery->cancel('ORDER ID');

可用性:获取可用性信息

$response = $ondemandDelivery->availability([
     //... KEY VALUE PAIR PAYLOAD
]);

API 参考

所有 API 参考都可以在 Shipday 文档网站上找到。 https://docs.shipday.com/reference/shipday-api

安全

如果您发现任何与安全相关的问题,请提交一个问题。

我该如何感谢你?

为什么不给 GitHub 仓库加星标呢?我很期待关注!你可以在 Twitter 上分享这个仓库的链接吗?

别忘了在Twitter 上关注我!

谢谢!Efekpogua Victory。

许可证

MIT