Pitäis saada ensimmäinen projekti eteenpäin joka lähettäis laskut SOAP:ia käyttäen laskutukseen.
Mutta, eipä ole tullut koskaan tehtyä.
Mulla on tiedossa täysin valmis malli XML-lasku, sekä tunnukset palveluun ja osoite jota kautta se toimii.
Mutta, onko tässä nyt joku isokin järki olemassa kun en mistään tunnu löytävän simppeliä esimerkkiä miten tuo XML listaus lähetetään laskuttajalle käyttäen soap post:ia ?
PHP:llä on sivusto muuten tehty ja laskutiedot saan kannasta kyllä nätisti miten vain.
Auttaisko joku ?
Kai se laskuttajan web service -kuvauksista pitäisi ilmetä, missä muodossa ja mihin setti lähetetään.
groovyb kirjoitti:
Kai se laskuttajan web service -kuvauksista pitäisi ilmetä, missä muodossa ja mihin setti lähetetään.
Tämmöset on avut(ja toki 100% xml esimerkki olemassa):
https://verkkopalvelu3.talenom.fi:4445/
Ja tokihan noihin nyt saan tiedot täytettyä niin että xml on ok, mutta miten tuo sitten käytännössä siirtyy tuolla soapilla eteenpäin, on "vähän" usvan peitossa.
Tästäkö on kyse: https://severa.visma.fi/integraatiot/talenom-online/
Tuolta käsin löytyi kyllä ihan suora API kuvauskin Visma Severa API
mitä tulee lähettämiseen yleisesti, tsekkaa vaikka https://github.com/doedje/jquery.soap
Tuo severa on käsittääkseni eriasia.
pitääpä katsoa tuota jquery asiaa, veikkaan vain että jää tekemättä mun osalta ;D
Mikset vaan käytä Soapclientia?
https://www.php.net/manual/en/soapclient.
Talenomin laskupalvelulle löytyy WSDL, joten pitäisi toimia heittämällä
$headers = array( "POST /InvoiceService.asmx HTTP/1.1", "Host: verkkopalvelu3.talenom.fi", "Content-type: text/xml;charset=\"utf-8\"", "Content-length: ".strlen($xml_post_string), "SOAPAction: http://www.talenom.fi/NewInvoice", ); //SOAPAction: your op URL $url = $soapUrl; // PHP cURL for https connection with auth $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_USERPWD, $soapUser.":".$soapPassword); // username and password - declared at the top of the doc curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $xml_post_string); // the SOAP request curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); // converting $response = curl_exec($ch); print_r($response); curl_close($ch); // converting $response1 = str_replace("<soap:Body>","",$response); $response2 = str_replace("</soap:Body>","",$response1); // convertingc to XML $parser = simplexml_load_string($response2); // user $parser to get your data out of XML response and to display it. #print_r($parser);
Tämmösen löysin jonkun toisen projektista ja sillä lähti pelittämään. Tuota soapclienttiä katselin myös, mutta en oikein tajunnut sen toimintaa äkkiseltään.
Aihe on jo aika vanha, joten et voi enää vastata siihen.