Skip to content

MisterBrownRSA/laravel-dhl-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel DHL API

I needed a laravel-esque wrapper to make calls to the DHL XML service, but couldn't find any. So I created one. It was specifically designed for my own personal use, but you are welcome to submit issues, and I'll look into refactoring it so that it can be used in a more general purpose fashion.

Getting Started

Prerequisites

This was built and tested ONLY on Laravel 5.5, although I'm sure it'll work on previous versions as well.

Installing

composer require misterbrownrsa/laravel-dhl-api

Since Laravel 5.5 automatically includes the service provider, it won't be necessary to register it. However, if you really want to, run the following command


##Usage Examples

###Capability

This is typically used to test the validity of addresses and DHL's capability to deliver. Validate must return true.

$user = User::first();

$GetCapability = new \MisterBrownRSA\DHL\API\GetCapability();
$GetCapability->user($user);
dd($GetCapability->validate());

Dump the request

dump($GetCapability->toXML());

Dump the response

dump($GetCapability->doCurlPost());
dump($GetCapability->requestRAW());

###Quotation

This is used to get product information such as the price and total transit days.

$product = [];
foreach ($cart->items as $key => $cartItem) {
    for ($i = 1; $i <= $cartItem->quantity; $i++) {
        $product[ $key ]['height'] = $box['height'];
        $product[ $key ]['depth'] = $box['length'];
        $product[ $key ]['width'] = $box['width'];
        $product[ $key ]['weight'] = $cartItem->warehouse->product->weight + $box1['weight'];
    }
}
$GetQuote = new \MisterBrownRSA\DHL\API\GetQuote();
$GetQuote->user($user)
    ->reference($cart->order->reference)
    ->addProduct($product)
    ->declaredValue($cart->subtotal);
    
$result = $GetQuote
    ->doCurlPost();
    
dd($result);

Dump the request

dd($GetQuote->toXML());

Dump the response

dump($GetQuote->results());
dump($GetQuote->resultsRAW());

Authors

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

  • Thanks David for your help during the implementation process

About

LARAVEL package for the DHL XML API

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages