Example #1
0
    /**
     * Client constructor
     * @param string $token
     * @param string $appToken
     * @param $appIdentifier (example: MyCoolIntegration/1.1 (http://example.com/MyCoolIntegration/; MyCoolIntegration@example.com) BasedOnSuperLib/1.4)
     */
    public function __construct($token, $appToken, $appIdentifier)
    {
        $this->token    = $token;
        $this->appToken = $appToken;

        // Add X-EconomicAppIdentifier to all SOAP calls
        $debug['stream_context'] = stream_context_create(array(
           'http' => array(
               'header' => 'X-EconomicAppIdentifier: ' . $appIdentifier
           )
        ));
        $this->client = new SoapClient($this->apiUrl, $this->debug);

        $this->client->ConnectWithToken(
            array(
                'token'    => $this->token,
                'appToken' => $this->appToken,
            )
        );
    }
<body>

<?php 
try {
    // Helper function to check query parameters.
    function checkParameter($param)
    {
        if (!isset($_REQUEST[$param])) {
            echo "Missing <code>" . $param . "</code> parameter in query string.";
            exit(0);
        }
    }
    $me = $_SERVER['PHP_SELF'];
    $wsdlUrl = 'https://api.e-conomic.com/secure/api1/EconomicWebservice.asmx?WSDL';
    $client = new SoapClient($wsdlUrl, array("trace" => 1, "exceptions" => 1));
    $client->ConnectWithToken(array('token' => $_REQUEST['token'], 'appToken' => $_REQUEST['appToken']));
    if ($_SERVER['REQUEST_METHOD'] == 'POST' && $_POST['action'] == 'create_debtor') {
        try {
            $debtorGroupHandles = $client->debtorGroup_GetAll()->DebtorGroup_GetAllResult->DebtorGroupHandle;
            $firstDebtorGroup = $debtorGroupHandles[0];
            $newDebtorHandle = $client->Debtor_Create(array('number' => $_POST['debtor_number'], 'debtorGroupHandle' => $firstDebtorGroup, 'name' => $_POST['debtor_name'], 'vatZone' => 'EU'))->Debtor_CreateResult;
            $client->Debtor_SetAddress(array('debtorHandle' => $newDebtorHandle, 'value' => $_POST['debtor_address']));
            print "<p>A new debtor has be created.</p>";
        } catch (Exception $exception) {
            print "<p><b>Could not create debtor.</b></p>";
            print "<p><i>" . $exception->getMessage() . "</i></p>";
        }
    }
    // Fetch list of all debtors.
    $debtorHandles = $client->Debtor_GetAll()->Debtor_GetAllResult->DebtorHandle;
    $debtorDataObjects = $client->Debtor_GetDataArray(array('entityHandles' => $debtorHandles))->Debtor_GetDataArrayResult->DebtorData;