• Prihlásiť / Vytvoriť účet

Vykonávam príkaz..

Stlačte F5 pre obnovenie stránky,
ak vidíte túto správu príliš dlho.

UPOZORNENIE:

Táto funkcia je prístupná len pre prihlásených užívateľov s typom účtu BUSINESS Membership (platená registrácia). Viac o typoch registrácie.
Typ registrácie si môžete zmeniť v priebehu platby v časti "Moja zóna" alebo nás kontaktujte.

Vytvorenie dokumentu prostredníctvom webovej služby SOAP

Vytvorenie dokumentu prostredníctvom volania SOAP webovej služby je možné volaním SOAP požiadavky s URL parametrom "soap" (GET).

REQUEST - Definíciu vstupných elementov detailne popisuje WSDL súbor, pričom hlavnými elementami sú: RESPONSE - Vrátená odpoveď obsahuje nasledovné parametre:

Príklad kódu v PHP


<?php
// Odoslanie požiadavky
// ====================

// povinný autentifikačný API kľúč, nastavíte si ho v zóne "Moje dokumenty -> Nastavenia"
$api_key "uARM_PSxvI*********************************";

// hodnoty atribútov v dokumente
$data = array (
      
'fields' => 
      array (
        
'KOD_PRODUKTU' => '39',
        
'KOD_SLUZBY' => '00',
        
'PDF_MARGIN_LEFT' => '-12',
        
'PDF_MARGIN_TOP' => '-6',
        
'PDF_ORIENTATION' => 'portrait',
        
'PODLISTOK_KOD_PRODUKTU' => '39',
        
'PODLISTOK_KOD_SLUZBY' => '00',
        
'PODLISTOK_ODOSIELATEL_MENO' => ' ',
        
'PODLISTOK_ODOSIELATEL_POSTA' => ' ',
        
'PODLISTOK_SUMA_CENTY' => '00',
        
'PRINT_MODE_DEFAULT' => 'default',
        
'SUMA_EUR' => '0.00',
      ),
    );

try{
    
// vytvoríme dokument
    
$client = new SoapClient("https://ipdf.sk/slovenska-posta/postova-poukazka-typ-r-peniaze-na-ucet?soap");
    
$response $client->generate($api_key$data$action);
}catch(
SoapFault $e){
    echo 
"Chyba pri vytváraní dokumentu: ".$e->getMessage();
}

// Spracovanie odpovede
// ====================

if($response->success == "1"){
    echo 
"Úspech - dokument bol vytvorený. Linka pre stiahnutie dokumentu: ".$response->download_link;
    
// súbor si môžete uložiť na lokálny disk
    
file_put_contents("/path/to/save.pdf"base64_decode($response->file_content));
}else{
    echo 
"Dokument sa nepodarilo vytvoriť. Popis chyby: ".$response->info;
}
?>

Riešenie potenciálnych problémov

1. Metóda soapClient->connect()

Pre uľahčenie implementácie je možné využiť podpornú metódu connect().
Metóda nevyžaduje autentifikáciu ani žiadne vstupné parametre a vráti správu obsahujúcu aktuálny čas servera.


<?php
$client 
= new SoapClient("https://ipdf.sk/slovenska-posta/postova-poukazka-typ-r-peniaze-na-ucet?soap");
$response $client->connect(); // Success - you have connected at 21.01.2019 11:01:07 to SoapServer at ipdf.sk ...

2. Alternatívny zápis pre inicializáciu SoapClient objektu:


<?php
// odkomentujte počas vývoja potrebné nastavenia
$context stream_context_create(array(
    
"ssl" => array(
        
// "verify_peer" => false,
        // "allow_self_signed" => true,
    
),
    
"http" => array(
        
// "curl_verify_ssl_peer" => false,
        // "curl_verify_ssl_host" => false,
    
),
));

$options = array(
    
"stream_context" => $context,
    
"features" => SOAP_SINGLE_ELEMENT_ARRAYS,
    
// "cache_wsdl" => WSDL_CACHE_NONE,
    // "trace" => true,
    // "exceptions" => true,
);

$client = new SoapClient("https://ipdf.sk/slovenska-posta/postova-poukazka-typ-r-peniaze-na-ucet?soap"$options);