FINVOICE- VÄLITYSPALVELU ILMOITTAMISPALVELUN SOVELTAMISOHJE

Koko: px
Aloita esitys sivulta:

Download "FINVOICE- VÄLITYSPALVELU ILMOITTAMISPALVELUN SOVELTAMISOHJE"

Transkriptio

1 FINVOICE- VÄLITYSPALVELU ILMOITTAMISPALVELUN SOVELTAMISOHJE Versio 1.0

2 2 ILMOITTAMISPALVELUN SOVELTAMISOHJE (versio 1.0) 1 Yleistä SenderInfo- sanoman tietoelementtien käyttö MessageActionCode InvoiceSenderAddress, InvoiceSenderIntermediatorAddress NewInvoiceSenderAddress, NewInvoiceSenderIntermediatorAddress SellerAccountID New SellerAccountID SellerDirectDebitIdentifier, SellerDirectPaymentIdentifier PaymentInstructionIdentifier SellerInstructionFreeText SellerInvoiceTypeText SellerInvoiceIdentifierText ReceiverInfo sanoman tietoelementtien käyttö InvoiceRecipientAddress, InvoiceRecipientIntermediatorAddress SellerInvoiceIdentifier ProposedDueDateAccepted, ProposedDueDate ProposedInvoicePeriodAccepted, ProposedInvoicePeriod Virhetilanteet Pankkien osoitteet Ilmoittamispalvelulle Ilmoittamispalveluun liittyvät ohjeet, kuvaukset ja tiedostot Suoraveloitus ja suoralasku Luettelo FinvoiceSenderInfo- ja FinvoiceReceiverInfo-sanomilla olevista tiedoista Sanoma mallit FinvoiceSenderInfo-sanoman malli FinvoiceReceiverInfo-sanoman malli Ulkoasu selaimella FinvoiceSenderInfo-sanoman malli FinvoiceReceiverInfo-sanoman malli Sanoman rakenteet FinvoiceSenderInfo-sanoman rakenne FinvoiceReceiverInfo-sanoman rakenne Sanoman schemamääritykset FinvoiceSenderInfo-sanoman schemamääritys FinvoiceSenderInfo-sanoman schemamääritys... 44

3 3 1 Yleistä FinvoiceSenderInfo-sanoman avulla lähettäjä (laskuttaja) ilmoittaa pankin verkkopankkia käyttäville asiakkaille omat tietonsa. Lähettäjä (laskuttaja) lähettää kuhunkin pankkiin tarkoitetut omat laskuttajatietonsa FinvoiceSenderInfo-sanomalla omaan pankkiinsa. Vastaanottava pankki välittää sanoman kuhunkin pankkiin sanoman kehyksessä olevan osoitteen perusteella. Pankki asettaa tiedot verkkopankin asiakkaan käytettäväksi. Verkkopankin asiakkaan osoitetiedot välitetään FinvoiceReceiverInfo-sanomalla lähettäjälle (laskuttaja). Finvoice-ReceiverInfo-sanoma sisältää FinvoiceSenderInfo-sanoman tiedot lisättynä laskun vastaanottajan tiedoilla. Sanoma sisältää myös lähettäjän pyytämät yksilöintitiedot esim. asiakasnumero jne. Sanomat on kehystetty Finvoice-soveltamisohjeessa kuvatulla SOAP-kehyksellä. From-elemetissä olevan senderin ja intermediatorin tunnus pitää olla sama kuin sanomassa oleva InvoiceSenderAddress ja InvoiceSenderIntermediatorAddress. Lähettäjällä on oltava Finvoice-välityspalvelusopimus oman pankkinsa kanssa. Lähettäjän pankki kirjoittaa FinvoiceSenderInfo-sanomaan lähettäjän nimen SellerOrganisationBankName-elementtiin. Sekä FinvoiceSenderInfo- että FinvoiceReceiverInfo-tapahtumaa voidaan katsoa selaimella xsl-tiedostojen avulla. Osoitteiden ilmoittamispalvelu Finvoice-välityspalvelussa LÄHETTÄJÄ 6 VASTAANOTTAJA LÄHETTÄJÄN PANKKI 2 4 VASTAANOTTAJAN VERKKO- PANKKI Lähettäjien ilmoitukset 1. Lähettäjä (laskuttaja) lähettää oman ilmoituksensa 2. Lähettäjän pankki välittää tiedot vastaanottajan (laskun vastaanottaja) verkkopankkiin, joka julkaisee lähettäjän tiedot verkkopankissa 3. Vastaanottaja pyytää lähettämään ilmoituksen laskuttajalle eli ottaa käyttöön e- laskutuksen 4. Vastaanottajan pankki lähettää vastaanotto-osoitteen lähettäjän pankkiin 5. Lähettäjä noutaa ilmoituksen pankista 6. Laskuttaja päivittää omiin järjestelmiinsä laskutustapamuutokset (Finvoice)

4 4 2 SenderInfo- sanoman tietoelementtien käyttö Tässä kohdassa on lueteltu tiettyjen elementtien käyttöön liittyvät tarkennukset. Kaikki tietoelementit ja niiden pituus, esiintyminen ja käyttö on kuvattu soveltamisohjeen tietoluettelossa. 2.1 MessageActionCode Kuvaa sanoman tarkoitusta: uuden ilmoituksen luonti (ADD), olemassaolevan ilmoituksen muuttaminen (CHANGE) tai olemassaolevan ilmoituksen poistaminen (DELETE). Lähettäjän (laskuttaja) ensimmäinen ilmoitus on aina uuden ilmoituksen luonti (ADD). Tietojen muuttuessa laskuttajan tulee tehdä muutos sen sopimuspankin kautta, jonka BIC-tunnus on annettu edellisellä sanomalla. Ilmoitus toimitetaan verkkopankin käyttäjien näkyville Finvoicen yleisissä ehdoissa kerrottujen aikataulujen mukaisesti. 2.2 InvoiceSenderAddress, InvoiceSenderIntermediatorAddress Verkkolaskuosoite ja välittäjän tunnus, johon lähettäjä (laskuttaja) vastaanottaa verkkopankin käyttäjien ilmoituksia. Osoitteen tulee olla sama kuin laskuttajailmoituksen kehyksellä oleva lähetysosoite. Lähetysosoite on sama kuin varsinaisten Finvoice-sanomien lähetysosoite. 2.3 NewInvoiceSenderAddress, NewInvoiceSenderIntermediatorAddress Lähettäjän (laskuttaja) ilmoittama uusi verkkolaskuosoite. Nämä kentät täytetään mikäli lähettäjän aikaisemmin ilmoittama verkkolaskuosoite muuttuu laskuttajailmoituksen lähettämisen jälkeen. Laskuttajailmoituksen muutos tulee lähettää vanhasta verkkolaskuosoitteesta. 2.4 SellerAccountID Kaikki ne tilinumerot, joille laskuttaja saa suorituksia asiakkailtaan. Tilinumeron perusteella pankki tarjoaa siirtymistä e-laskutukseen paperilaskun maksamisen yhteydessä. 2.5 New SellerAccountID Lähettäjän (laskuttaja) ilmoittama uusi/uudet voimassaolevat tilinumero/t, joille verkkopankin käyttäjät maksavat. Lähettäjä kertoo kaikki voimassaolevat tilinumerot, joilla korvataan aikaisemmin annettu tieto.

5 5 2.6 SellerDirectDebitIdentifier, SellerDirectPaymentIdentifier Lähettäjän (laskuttaja) samalle laskutusaiheelle voimassaoleva suoraveloituksen palvelutunnus ja suoralaskun palvelutunnus. Tiedon avulla pankki voi hallita olemassaolevia valtakirjoja ja pyytää verkkopankin käyttäjää lakkauttamaan valtakirjan vastaanotto-osoitteen lähettämisen yhteydessä. 2.7 PaymentInstructionIdentifier Lähettäjän (laskuttaja) laskutusaiheen identifioiva tunnus, jonka perusteella vastaanottaja valitsee oikean laskutusaiheen. Tieto kannattaa antaa myös itse Finvoice-laskun epi-osassa. 2.8 SellerInstructionFreeText Lähettäjän (laskuttaja) antama ohje verkkopankin käyttäjälle. Ohjeessa suositellaan kerrottavan mitä yksilöintitietoja verkkopankin käyttäjän tulee antaa, sekä e-laskuun siirtymiseen tarvittava aika laskuttajalla. Mikäli lähettäjällä on e-laskun toimittamiseen liittyviä poikkeuksia, esimerkiksi jos joitain laskuja ei pystytä toimittamaan e-laskuna, tämä tulisi kertoa vastaanottajalle tässä kentässä. 2.9 SellerInvoiceTypeText Laskutusaihe tekstimuodossa, joka näytetään verkkopankin käyttäjälle (esim puhelinlasku, energialasku) SellerInvoiceIdentifierText Laskutusaiheen yksilöintieto tekstimuodossa, joka näytetään verkkopankin käyttäjälle (esim asiakasnumero, sopimusnumero). 3 ReceiverInfo sanoman tietoelementtien käyttö Tässä kohdassa on lueteltu tiettyjen elementtien käyttöön liittyvät tarkennukset. Kaikki tietoelementit ja niiden pituus, esiintyminen ja käyttö on kuvattu soveltamisohjeen tietoluettelossa. 3.1 InvoiceRecipientAddress, InvoiceRecipientIntermediatorAddress Vastaanottajan verkkolaskuosoite, johon laskut voi toimittaa. Verkkolaskuosoite on IBAN-muotoinen numerosarja. InvoiceRecipientIntermediatorAddress-kentästä voi päätellä vastaanottajan pankin. Välittäjän tunnus on pankin Bic-tunnus. 3.2 SellerInvoiceIdentifier Verkkopankin käyttäjän antama yksilöintitieto, jolla lähettäjä (laskuttaja) voi identifioida maksajan omassa järjestelmässään.

6 6 Vastaanottajan identifiointiin voidaan käyttää myös viitenumeroa, jonka pankki voi palauttaa kentässä EpiRemittanceIdentifier. 3.3 ProposedDueDateAccepted, ProposedDueDate Mikäli lähettäjä sallii, vastaanottaja voi ilmoittaa vastaanottoilmoituksella haluamansa laskun eräpäivän. Pankit eivät tarjoa tätä mahdollisuutta vastaanottajille tässä vaiheessa. 3.4 ProposedInvoicePeriodAccepted, ProposedInvoicePeriod 4 Virhetilanteet Mikäli lähettäjä sallii, vastaanottaja voi ilmoittaa vastaanottoilmoituksella haluamansa laskun laskutusjakson. Pankit eivät tarjoa tätä mahdollisuutta vastaanottajille tässä vaiheessa. Ilmoituspalvelussa käytetään samoja Finvoicen vahvistussanomia, jotka on kuvattu Finvoicen soveltamisohjeessa (Versio 1.2). Pankit lähettävät vahvistussanoman ainoastaan silloin kun lähettäjän ilmoitusta ei jostain syystä voida välittää eteenpäin. Vahvistussanoma sisältää alkuperäisen SenderInfo sanoman lähettäjän ja vastaanottajan osoitetiedot sekä alkuperäisen sanoman MessageID:n ja Timestamp:n sekä hylkäämiseen syyn koodina ja tekstinä. Laskuttajailmoituksen lähettämisessä mahdolliset hylkäämisen syyt ovat seuraavat: Koodi Selite Syy 2 Vastaanottajaa ei löydy Kehyksen vastaanottajan tiedot virheelliset. Lähettäjän ilmoituksen osoite on muu kuin SENDERINFO 3 Palvelusopimus puuttuu Lähettäjällä ei ole Finvoicevälityspalvelusopimusta pankin kanssa. 4 Intermediatoria ei löydy Kehyksen lähettäjän tai vastaanottajan tiedot virheelliset 5 Sanoman ID ja aikaleima on jo käytetty 6 Muu virhe - Sanomalla annettu verkkolaskuosoite ei täsmää kehyksen verkkolaskuosoitteeseen - Laskuttajailmoitus on jo olemassa - Laskuttajailmoitusta ei löydy (muutos ja poistotilanteet)

7 7 5 Pankkien osoitteet Ilmoittamispalvelulle Pankkien tarjoamalla ilmoituspalvelulla on oma osoite. Itse ilmoitussanoma (FinvoiceSenderInfo) on kehystetty Finvoice-kehyksellä. Laskuttajan lähetysosoitteena (From, Role Sender ja From, Role Intermediator) on asiakkaan ja pankin väliseen Finvoice-välityspalvelusopimukseen merkitty verkkolaskuosoite ja välittäjän tunnus (pankin BIC). Kaikki pankit käyttävät samaa ilmoittamispalvelun vastaanotto-osoitetta: Vastaanotto-osoite: SENDERINFO SENDERINFO SENDERINFO SENDERINFO Välittäjän tunnus: OKOYFIHH (Osuupankit) NDEAFIHH (Nordea) PSPBFIHH (Sampo Pankki) HELSFIHH (Aktia, Säästöpankit ja Paikallisosuuspankit) FinvoiceReceiverInfo-sanomissa käytetään myös Finvoice-kehystä. Sanomassa lähettäjänä on verkkopankin käyttäjän osoite ja välittäjän tunnus (sama mihin laskut toimitetaan) ja vastaanottajana on alkuperäisen FinvoiceSenderInfo-sanoman lähettäjä. 6 Ilmoittamispalveluun liittyvät ohjeet, kuvaukset ja tiedostot Ohjeet ja kuvaukset: Finvoice-soveltamisohje 1.2 Finvoice-välityspalvelun palvelukuvaus ja ehdot sekä ehdot verkkopankkiasiakkaalle Tiedostot: FinvoiceSenderInfo.xsd (Schemakuvaus) FinvoiceSenderInfo.dtd (Rakennekuvaus) FinvoiceSenderInfo.xsl (Tyylitiedosto) FinvoiceSenderInfo.xml (Mallitiedosto laskuttajan ilmoituksesta) FinvoiceReceiverInfo.xsd (Schemakuvaus) FinvoiceReceiverInfo.dtd (Rakennekuvaus) FinvoiceReceiverInfo.xsl (Tyylitiedosto) FinoiceReceiverInfo.xml (Mallitiedosto vastaanottajan ilmoituksesta) Arkistointiohjelma (Ohjelma kehyksen purkamista varten ja ilmoitusten seurantaan)

8 8 7 Suoraveloitus ja suoralasku Finvoice-välityspalvelussa ei voi välittää suoraveloitettavia laskuja tai suoralaskuun liittyviä laskuja. Pankit ehdottavat vastaanottajalle voimassaolevan suoraveloitusvaltakirjan lakkauttamista vastaanottoilmoituksen lähettämisen yhteydessä, mikäli lähettäjä on laskuttajailmoituksellaan antanut aiheeseen liittyvän palvelutunnuksen. Mikäli vastaanottajalla on voimassaoleva suoraveloitusvaltakirja sekä e-lasku, pankit suosittelevat laskuttajaa noudattamaan kuluttajan viimeisintä tahdonilmausta.

9 9 8 Luettelo FinvoiceSenderInfo- ja FinvoiceReceiverInfo-sanomilla olevista tiedoista. S = tieto esiintyy FinvoiceSenderInfo-sanomassa R = tieto esiintyy FinvoiceReceiverInfo-sanomassa ELEMENTIN NIMI TYYPPI ESIINTY PITUUS MINEN SALLITUT ARVOT KUVAUS ESIMERKKI MessageDetails S R Aggr. 1 Sanoman perustiedot SENDERINFO, MessageTypeCode S R String 35 1 RECEIVERINFO Sanoman suuntaa kuvaava koodi. SenderInfo on laskuttajalta vastaanottajalle. ReceiverInfo on vastaanottajalta laskuttajalle Messagetypecodea kuvaa teksti, joka voidaan vastaanottopäässä avata selväkielisenä LASKUTTAJAN ILMOITUS, VASTAANOTTAJAN ILMOITUS MessageTypeText S R String 35 1 ADD,CHANGE, Message ActionCode S R String 1 DELETE Viimeisin tieto on aina voimassaoleva MessageDate S R Date 8 1 CCYYMMDD SenderInfoIdentifier S R String Lähettäjän antama yksilöivä tunniste/tunnus sanomalle laskuttajan omaan käyttöön SellerPartyDetails S R Aggr. 1 SellerPartyIdentifier S R String Y-tunnus, joka yksilöi laskuttajan SellerOrganisationName S R String Lähettäjän nimi Lähettäjän nimi pankin järjestelmässä. Lähettäjän pankki lisää sopimuksella olevan nimitiedon (virallinen nimi). Sopimuksella oleva tieto haetaan SOAP:ssä olevan SellerOrganisationBankName R String lähetysosoitteen perusteella SellerPostalAddressDetails S R Aggr SellerStreetName S R String Katuosoite SellerTownName S R String Lähettäjän postitoimipaikka Helsinki SellerPostCodeIdentifier S R String Lähettäjän postinumero (Suomessa viisi merkkiä) CountryCode S R String Lähettäjän maakoodi ISO -koodina FI CountryName S R String Lähettäjän maa Suomi SellerPostOfficeBoxIdentifier S R String Lähettäjän postilokero PL 123 SellerOrganisationUnitNumber S R String Lähettäjän organisaatioyksikkö, joka tarkentaa tarvittaessa virallista y-tunnusta usein myös OVT tai InvoiceSenderInformationDetails S R Aggr. 1 Lähettäjän liittyvät muut tiedot SellerWebaddressNameText S R String Web-osoitteen teksti Lohi ja Hauki Oy SellerWebaddressText S R String Lähettäjän Internet-osoite InvoiceSenderAddress S R String 35 1 Lähettäjän lähetysosoite, osoite pitää olla sama kuin soapkehykseksessä oleva lähetysosoite. FI Lähettäjän käyttämän välittäjän osoite, Intermediator - InvoiceSenderIntermediatorAddress S R String tunnus OKOYFIHH NewInvoiceSenderAddress S String Lähettäjän verkkolaskun uusi lähetysosoite, jolla korvataan InvoiceSenderAddress-osoite FI NewInvoiceSenderIntermediatorAddress S String Lähettäjän käyttämän välittäjän osoite uusi osoite, jolla korvataan InvoiceSenderIntermediatorAddress OKOYFIHH SellerAccountDetails S R Aggr. 1..n Lähettäjän pankkiyhteystiedot (toistuva agregaatti) FI tai SellerAccountID S R String 35 1 Lähettäjän tilinumero IBAN tai BBAN -muodossa SellerBic S R String SWIFT-koodi Lähettäjän pankin BIC-tunnus (8 tai 11 merkkiä) OKOYFIHH Lähettäjän tilinumero IBAN tai BBAN -muodossa. Se tieto, FI tai NewSellerAccountID S String joska korvaa SellerAccountID:n NewSellerBic S String SWIFT-koodi Lähettäjän pankin BIC-tunnus (8 tai 11 merkkiä). Se tieto, joka korvaa SellerBicin OKOYFIHH SellerInvoiceDetails S R Aggr. 1 SellerDirectDebitIdentifier S R String Lähettäjän suoraveloitustunnus SellerDirectPaymentIdentifier S R String Lähettäjän suoramaksutunnus Lähettäjän määrittelemä tunniste, jolla yksilöidään PaymentInstructionIdentifier S R String laskutusaihe. Välitetään Finvoicen epi-osassa elementissä EpiPaymentInstructionId. esim "Ilmoituksen vastaanoton jälkeen emme toimita SellerInstructionFreeText S R String Lähettäjän antama ohje laskun vastaanottajalle laskuja paperilla" SellerInvoiceTypeDetails S R Aggr. 0...n SellerInvoiceTypeText S R String 35 attr.kielikoodit 1 FI,SE,EN Lähettäjän määrittelemää tunnistetta (PaymentInstructionIdentifier) vastaava teksti Energialasku attr.kielikoodit Lähettäjän tarvitsema maksajan yksilöintitieto tekstinä Tilausnumero, SellerInvoiceIdentifierText S R String FI,SE,EN Samalla kielikoodilla voi olla 2 yksilöintitietoa puhelinnumero, ReceiverInfoTimeStamp R 22 1 Ilmoituksen tekemisen ajankohta. Tarkka aika tarvitaan jos kuluttaja tekee ilmoituksen samalle laskuttajalle samana päivänä eri pankeista T11:12:12+02

10 10 BuyerPartyDetails R Aggr. 1 BuyerPartyIdentifier R String Ostajan y-tunnus, BuyerOrganisationName R String Vastaanottajan nimi Matti Mankuja BuyerPostalAddressDetails R Aggr BuyerStreetName R String Katuosoite Haapakuja 2 BuyerTownName R String Kaupunki Helsinki BuyerPostCodeIdentifier R String Postinumero esim CountryCode R String ISO-koodi Maakoodi FI, SE CountryName R String Maan nimi BuyerPostOfficeBoxIdentifier R String Postilokeron numero BuyerOrganisationUnitNumber R String Lisätunnus esim. Ovt-tunnuksen lisäosa tai ovt-tunnus InvoiceRecipientDetails R Aggr. 1 InvoiceRecipientAddress R String 35 1 Vastaanottajan laskutusosoite FI InvoiceRecipientIntermediatorAddress R String Vastaanottajan välittäjän tunnus OKOYFIHH Tunnistetieto, jonka vastaanotaja antaa lähettäjälle ks. arvo, esim. Tilausnumero, SellerInvoiceIdentifier R String SellerInvoiceIdentifierText. Tietoja voi olla kaksi puhelinnumero Maksun viitenumero, pankin pitäisi antaa tämä aina edellisen maksun EpiRemittanceIdentifier R String automaattisesti ilmoituksessa (Suomessa maksimi 20) viitenumero InvoiceRecipientLanguageCode R String 2 1 FI, SE, EN Vastaanottajan kielikoodi FI ProposedDueDateAccepted S R String 3 1 YES, NO Salliiko lähettäjä maksajalle eräpäivätoivomuksen antamisno ProposedDueDate R Numeric Vastaanottajan toivoma eräpäivä 15 ProposedInvoicePeriodAccepted S R String 3 1 YES, NO Salliiko lähettäjä maksajalle laskutusjakso toivomuksen antamisen NO ProposedInvoicePeriod R String 2 1=kerran vuodessa, 2=puolivuosittain, 4=neljännesvuositt ain, 6=joka toinen kuukausi =kerran kuussa Vastaanottajan toivoma laskutusjakso 2

11 11 9 Sanoma mallit 9.1 FinvoiceSenderInfo-sanoman malli <?xml version="1.0" encoding="iso "?> <!-- edited with XML Spy v4.2 U ( by Jussi Esimerkki --> <!--Sample XML file generated by XML Spy v4.2 U ( <!DOCTYPE FinvoiceSenderInfo SYSTEM "FinvoiceSenderInfo.dtd"> <?xml-stylesheet type="text/xsl" href="finvoicesenderinfo.xsl"?> <!-- FinvoiceSenderInfo xmlns:xsi=" xsi:nonamespaceschemalocation="c:\l\finvoicekehitys\kuluttajalaskut\finvoiceinfo\finvoicesenderinfo.xsd" Version="1.0"- -> <FinvoiceSenderInfo Version="1.0"> <MessageDetails> <MessageTypeCode>SENDERINFO</MessageTypeCode> <MessageTypeText>LASKUTTAJAN ILMOITUS</MessageTypeText> <MessageActionCode>ADD</MessageActionCode> <MessageDate Format="CCYYMMDD"> </MessageDate> <SenderInfoIdentifier>ID21221</SenderInfoIdentifier> </MessageDetails> <SellerPartyDetails> <SellerPartyIdentifier> </SellerPartyIdentifier> <SellerOrganisationName>Pullin Musiikki Oy</SellerOrganisationName> <SellerOrganisationName>Music House Pulli Ltd</SellerOrganisationName> <SellerPostalAddressDetails> <SellerStreetName>Oskarintie 22</SellerStreetName> <SellerTownName>Helsinki</SellerTownName> <SellerPostCodeIdentifier>00101</SellerPostCodeIdentifier> <CountryCode>FI</CountryCode> <CountryName>Finland</CountryName> <SellerPostOfficeBoxIdentifier>PL122</SellerPostOfficeBoxIdentifier> </SellerPostalAddressDetails> </SellerPartyDetails> <SellerOrganisationUnitNumber> </SellerOrganisationUnitNumber> <InvoiceSenderInformationDetails> <SellerWebaddressNameText>Pullin Musiikki Oy</SellerWebaddressNameText> <SellerWebaddressText> <InvoiceSenderAddress>FI </InvoiceSenderAddress> <InvoiceSenderIntermediatorAddress>OKOYFIHH</InvoiceSenderIntermediatorAddress> </InvoiceSenderInformationDetails> <SellerAccountDetails> <SellerAccountID IdentificationSchemeName="IBAN">FI </SellerAccountID> <SellerBic IdentificationSchemeName="BIC">OKOYFIHH</SellerBic> </SellerAccountDetails> <SellerAccountDetails> <SellerAccountID IdentificationSchemeName="BBAN"> </SellerAccountID> </SellerAccountDetails> <SellerInvoiceDetails> <SellerDirectDebitIdentifier> </SellerDirectDebitIdentifier> <SellerDirectPaymentIdentifier> </SellerDirectPaymentIdentifier> <PaymentInstructionIdentifier>152</PaymentInstructionIdentifier> <SellerInvoiceTypeDetails> <SellerInvoiceTypeText LanguageCode="FI">Sellisti</SellerInvoiceTypeText> <SellerInvoiceIdentifierText LanguageCode="FI">Tilausnumero</SellerInvoiceIdentifierText> </SellerInvoiceTypeDetails> <SellerInvoiceTypeDetails> <SellerInvoiceTypeText LanguageCode="SE">Sellisten</SellerInvoiceTypeText> <SellerInvoiceIdentifierText LanguageCode="FI">Bestälnings numret</sellerinvoiceidentifiertext> </SellerInvoiceTypeDetails> </SellerInvoiceDetails> <ProposedDueDateAccepted>YES</ProposedDueDateAccepted> <ProposedInvoicePeriodAccepted>YES</ProposedInvoicePeriodAccepted> </FinvoiceSenderInfo>

12 FinvoiceReceiverInfo-sanoman malli <?xml version="1.0" encoding="iso "?> <!-- edited with XML Spy v4.2 U ( by Jussi Esimerkki --> <!--Sample XML file generated by XML Spy v4.2 U ( <!DOCTYPE FinvoiceReceiverInfo SYSTEM "FinvoiceReceiverInfo.dtd"> <?xml-stylesheet type="text/xsl" href="finvoicereceiverinfo.xsl"?> <!--FinvoiceReceiverInfo xmlns:xsi=" xsi:nonamespaceschemalocation="c:\l\finvoicekehitys\kuluttajalaskut\finvoiceinfo\finvoicereceiverinfo.xsd" Version="1.0"--> <FinvoiceReceiverInfo Version="1.0"> <MessageDetails> <MessageTypeCode>RECEIVERINFO</MessageTypeCode> <MessageTypeText>VASTAANOTTAJAN ILMOITUS</MessageTypeText> <MessageActionCode>ADD</MessageActionCode> <MessageDate Format="CCYYMMDD"> </MessageDate> <SenderInfoIdentifier>ID21221</SenderInfoIdentifier> </MessageDetails> <SellerPartyDetails> <SellerPartyIdentifier> </SellerPartyIdentifier> <SellerOrganisationName>Pullin Musiikki Oy</SellerOrganisationName> <SellerOrganisationName>Music House Pulli Ltd.</SellerOrganisationName> <SellerOrganisationBankName>Pullin Musiikki Oy Ab</SellerOrganisationBankName> <SellerPostalAddressDetails> <SellerStreetName>Oskarintie 22</SellerStreetName> <SellerTownName>Helsinki</SellerTownName> <SellerPostCodeIdentifier>00101</SellerPostCodeIdentifier> <CountryCode>FI</CountryCode> <CountryName>Finland</CountryName> <SellerPostOfficeBoxIdentifier>PL122</SellerPostOfficeBoxIdentifier> </SellerPostalAddressDetails> </SellerPartyDetails> <SellerOrganisationUnitNumber> </SellerOrganisationUnitNumber> <InvoiceSenderInformationDetails> <SellerWebaddressNameText>Pullin Musiikki Oy</SellerWebaddressNameText> <SellerWebaddressText> <InvoiceSenderAddress>FI </InvoiceSenderAddress> <InvoiceSenderIntermediatorAddress>OKOYFIHH</InvoiceSenderIntermediatorAddress> </InvoiceSenderInformationDetails> <SellerAccountDetails> <SellerAccountID IdentificationSchemeName="IBAN">FI </SellerAccountID> <SellerBic IdentificationSchemeName="BIC">OKOYFIHH</SellerBic> </SellerAccountDetails> <SellerAccountDetails> <SellerAccountID IdentificationSchemeName="BBAN"> </SellerAccountID> <SellerBic IdentificationSchemeName="BIC">OKOYFIHH</SellerBic> </SellerAccountDetails> <SellerInvoiceDetails> <SellerDirectDebitIdentifier> </SellerDirectDebitIdentifier> <SellerDirectPaymentIdentifier> </SellerDirectPaymentIdentifier> <PaymentInstructionIdentifier>152</PaymentInstructionIdentifier> <SellerInstructionFreeText>Huom!Emme toimita käyttöönoton jälkeen laskuja paperilla</sellerinstructionfreetext> <SellerInvoiceTypeDetails> <SellerInvoiceTypeText LanguageCode="FI">Sellisti</SellerInvoiceTypeText> <SellerInvoiceIdentifierText LanguageCode="FI">Tilausnumero</SellerInvoiceIdentifierText> <SellerInvoiceIdentifierText LanguageCode="FI">Asiakasnumero</SellerInvoiceIdentifierText> </SellerInvoiceTypeDetails> <SellerInvoiceTypeDetails> <SellerInvoiceTypeText LanguageCode="SE">Sellisten</SellerInvoiceTypeText> <SellerInvoiceIdentifierText LanguageCode="SE">Beställningsnummer</SellerInvoiceIdentifierText> <SellerInvoiceIdentifierText LanguageCode="FI">Kundnummer</SellerInvoiceIdentifierText> </SellerInvoiceTypeDetails> <ReceiverInfoTimeStamp> T11:12:12+2</ReceiverInfoTimeStamp> </SellerInvoiceDetails> <BuyerPartyDetails> <BuyerPartyIdentifier> P</BuyerPartyIdentifier> <BuyerOrganisationName>Matti Mallikas</BuyerOrganisationName> <BuyerPostalAddressDetails>

13 13 <BuyerStreetName>Puuhakuja 2</BuyerStreetName> <BuyerTownName>Helsinki</BuyerTownName> <BuyerPostCodeIdentifier>00101</BuyerPostCodeIdentifier> <CountryCode>FI</CountryCode> <CountryName>Finland</CountryName> <BuyerPostOfficeBoxIdentifier>PL 13123</BuyerPostOfficeBoxIdentifier> </BuyerPostalAddressDetails> </BuyerPartyDetails> <BuyerOrganisationUnitNumber> </BuyerOrganisationUnitNumber> <InvoiceRecipientDetails> <InvoiceRecipientAddress>FI </InvoiceRecipientAddress> <InvoiceRecipientIntermediatorAddress>NDEAFIHH</InvoiceRecipientIntermediatorAddress> <SellerInvoiceIdentifier>AS </SellerInvoiceIdentifier> <EpiRemittanceIdentifier>13</EpiRemittanceIdentifier> <InvoiceRecipientLanguageCode>FI</InvoiceRecipientLanguageCode> </InvoiceRecipientDetails> <ProposedDueDate>15</ProposedDueDate> <ProposedInvoicePeriod>1</ProposedInvoicePeriod> </FinvoiceReceiverInfo>

14 14 10 Ulkoasu selaimella 10.1 FinvoiceSenderInfo-sanoman malli

15 FinvoiceReceiverInfo-sanoman malli Kuvassa on vain alaosa.

16 16 11 Sanoman rakenteet 11.1 FinvoiceSenderInfo-sanoman rakenne

17 FinvoiceReceiverInfo-sanoman rakenne

18 12 Sanoman schemamääritykset FinvoiceSenderInfo-sanoman schemamääritys Schema FinvoiceSenderInfo.xsd Elements CountryCode CountryName EpiRemittanceIdentifier FinvoiceSenderInfo InvoiceSenderAddress InvoiceSenderIntermediatorAddress MessageActionCode MessageTypeCode MessageTypeText ProposedDueDate ProposedInvoicePeriod SellerInvoiceIdentifier SellerInvoiceTypeCode SellerOrganisationBankName SellerOrganisationName SellerOrganisationUnitNumber SellerPartyIdentifier SellerPostCodeIdentifier SellerPostOfficeBoxIdentifier SellerStreetName SellerTownName SellerWebaddressText SenderInfoIdentifier Complex types Date InvoiceRecipientDetailsType InvoiceSenderInformationDetailsType MessageDetailsType SellerAccountDetailsType SellerAccountIDType SellerBicType SellerInvoiceDetailsType SellerInvoiceIdentifierTextType SellerInvoiceTypeTextType SellerPartyDetailsType SellerPostalAddressDetailsType element CountryCode used by complextype BuyerPostalAddressDetailsType length 2 source <xs:element name="countrycode"> <xs:length value="2"/> element CountryName used by complextype BuyerPostalAddressDetailsType minlength 2 source <xs:element name="countryname">

19 19 element FinvoiceSenderInfo children MessageDetails SellerPartyDetails SellerOrganisationUnitNumber InvoiceSenderInformationDetails SellerAccountDetails SellerInvoiceDetails ProposedDueDateAccepted ProposedInvoicePeriodAccepted attributes Name Type Use Default Fixed Annotation Version xs:decimal required source <xs:element name="finvoicesenderinfo"> <xs:complextype> <xs:sequence> <xs:element name="messagedetails" type="messagedetailstype"/> <xs:element name="sellerpartydetails" type="sellerpartydetailstype"/> <xs:element name="sellerorganisationunitnumber" minoccurs="0"> <xs:minlength value="5"/> <xs:element name="invoicesenderinformationdetails" type="invoicesenderinformationdetailstype"/> <xs:element name="selleraccountdetails" type="selleraccountdetailstype" maxoccurs="unbounded"/> <xs:element name="sellerinvoicedetails" type="sellerinvoicedetailstype"/> <xs:element name="proposedduedateaccepted" minoccurs="0"> <xs:maxlength value="3"/> <xs:enumeration value="yes"/> <xs:enumeration value="no"/> <xs:element name="proposedinvoiceperiodaccepted" minoccurs="0"> <xs:maxlength value="3"/> <xs:enumeration value="yes"/> <xs:enumeration value="no"/> </xs:sequence> <xs:attribute name="version" type="xs:decimal" use="required"/>

20 20 element FinvoiceSenderInfo/MessageDetails type MessageDetailsType children MessageTypeCode MessageTypeText MessageActionCode MessageDate SenderInfoIdentifier source <xs:element name="messagedetails" type="messagedetailstype"/> element FinvoiceSenderInfo/SellerPartyDetails type SellerPartyDetailsType children SellerPartyIdentifier SellerOrganisationName SellerOrganisationBankName SellerPostalAddressDetails source <xs:element name="sellerpartydetails" type="sellerpartydetailstype"/> element FinvoiceSenderInfo/SellerOrganisationUnitNumber minlength 5 source <xs:element name="sellerorganisationunitnumber" minoccurs="0"> <xs:minlength value="5"/>

21 21 element FinvoiceSenderInfo/InvoiceSenderInformationDetails type InvoiceSenderInformationDetailsType children SellerWebaddressNameText SellerWebaddressText InvoiceSenderAddress InvoiceSenderIntermediatorAddress NewInvoiceSenderAddress NewInvoiceSenderIntermediatorAddress source <xs:element name="invoicesenderinformationdetails" type="invoicesenderinformationdetailstype"/> element FinvoiceSenderInfo/SellerAccountDetails type SellerAccountDetailsType children SellerAccountID SellerBic NewSellerAccountID NewSellerBic source <xs:element name="selleraccountdetails" type="selleraccountdetailstype" maxoccurs="unbounded"/>

22 22 element FinvoiceSenderInfo/SellerInvoiceDetails type SellerInvoiceDetailsType children SellerDirectDebitIdentifier SellerDirectPaymentIdentifier PaymentInstructionIdentifier SellerIntsructionFreeText SellerInvoiceTypeDetails source <xs:element name="sellerinvoicedetails" type="sellerinvoicedetailstype"/> element FinvoiceSenderInfo/ProposedDueDateAccepted maxlength 3 enumeration YES enumeration NO source <xs:element name="proposedduedateaccepted" minoccurs="0"> <xs:maxlength value="3"/> <xs:enumeration value="yes"/> <xs:enumeration value="no"/> element FinvoiceSenderInfo/ProposedInvoicePeriodAccepted maxlength 3 enumeration YES enumeration NO source <xs:element name="proposedinvoiceperiodaccepted" minoccurs="0"> <xs:maxlength value="3"/> <xs:enumeration value="yes"/> <xs:enumeration value="no"/>

23 23 element InvoiceSenderAddress source <xs:element name="invoicesenderaddress"> element InvoiceSenderIntermediatorAddress minlength 8 maxlength 11 source <xs:element name="invoicesenderintermediatoraddress"> <xs:maxlength value="11"/> <xs:minlength value="8"/> element MessageActionCode enumeration ADD enumeration CHANGE enumeration DELETE source <xs:element name="messageactioncode"> <xs:enumeration value="add"/> <xs:enumeration value="change"/> <xs:enumeration value="delete"/> element MessageTypeCode source <xs:element name="messagetypecode" fixed="senderinfo"> <xs:restriction base="xs:string"/>

24 24 element MessageTypeText source <xs:element name="messagetypetext"> <xs:restriction base="xs:string"/> element SellerInvoiceIdentifier used by complextype InvoiceRecipientDetailsType minlength 1 source <xs:element name="sellerinvoiceidentifier"> <xs:minlength value="1"/> element SellerInvoiceTypeCode maxlength 24 source <xs:element name="sellerinvoicetypecode"> <xs:maxlength value="24"/> element SellerOrganisationBankName minlength 2 source <xs:element name="sellerorganisationbankname">

25 25 element SellerOrganisationName minlength 2 source <xs:element name="sellerorganisationname"> element SellerOrganisationUnitNumber minlength 5 source <xs:element name="sellerorganisationunitnumber"> <xs:minlength value="5"/> element SellerPartyIdentifier minlength 1 maxlength 48 source <xs:element name="sellerpartyidentifier"> <xs:maxlength value="48"/> <xs:minlength value="1"/> element SellerPostCodeIdentifier minlength 1 maxlength 48 source <xs:element name="sellerpostcodeidentifier">

26 26 <xs:maxlength value="48"/> <xs:minlength value="1"/> element SellerPostOfficeBoxIdentifier minlength 1 maxlength 48 source <xs:element name="sellerpostofficeboxidentifier"> <xs:maxlength value="48"/> <xs:minlength value="1"/> element SellerStreetName minlength 2 source <xs:element name="sellerstreetname"> element SellerTownName minlength 2 source <xs:element name="sellertownname"> element SellerWebaddressText

27 27 maxlength 512 source <xs:element name="sellerwebaddresstext"> <xs:maxlength value="512"/> element SenderInfoIdentifier minlength 1 maxlength 48 source <xs:element name="senderinfoidentifier"> <xs:minlength value="1"/> <xs:maxlength value="48"/> complextype Date type extension of xs:integer used by element MessageDetailsType/MessageDate attributes Name Type Use Default Fixed Annotation Format xs:string optional CCYYMMDD source <xs:complextype name="date"> <xs:simplecontent> <xs:extension base="xs:integer"> <xs:attribute name="format" type="xs:string" use="optional" fixed="ccyymmdd"/> </xs:extension> </xs:simplecontent> complextype InvoiceRecipientDetailsType children InvoiceRecipientAddress InvoiceRecipientIntermediatorAddress SellerInvoiceIdentifier EpiRemittanceIdentifier InvoiceRecipientLanguageCode source <xs:complextype name="invoicerecipientdetailstype"> <xs:sequence> <xs:element ref="invoicerecipientaddress"/>

28 28 <xs:element ref="invoicerecipientintermediatoraddress"/> <xs:choice> <xs:element ref="sellerinvoiceidentifier"/> <xs:element ref="epiremittanceidentifier"/> </xs:choice> <xs:element ref="invoicerecipientlanguagecode"/> </xs:sequence> complextype InvoiceSenderInformationDetailsType children SellerWebaddressNameText SellerWebaddressText InvoiceSenderAddress InvoiceSenderIntermediatorAddress NewInvoiceSenderAddress NewInvoiceSenderIntermediatorAddress used by element FinvoiceSenderInfo/InvoiceSenderInformationDetails source <xs:complextype name="invoicesenderinformationdetailstype"> <xs:sequence> <xs:element name="sellerwebaddressnametext" minoccurs="0"> <xs:maxlength value="70"/> <xs:element name="sellerwebaddresstext" minoccurs="0"> <xs:maxlength value="512"/> <xs:element name="invoicesenderaddress"> <xs:element name="invoicesenderintermediatoraddress"> <xs:minlength value="8"/> <xs:maxlength value="11"/> <xs:element name="newinvoicesenderaddress" minoccurs="0"> <xs:element name="newinvoicesenderintermediatoraddress" minoccurs="0">

29 29 <xs:minlength value="8"/> <xs:maxlength value="11"/> </xs:sequence> element InvoiceSenderInformationDetailsType/SellerWebaddressNameText maxlength 70 source <xs:element name="sellerwebaddressnametext" minoccurs="0"> <xs:maxlength value="70"/> element InvoiceSenderInformationDetailsType/SellerWebaddressText maxlength 512 source <xs:element name="sellerwebaddresstext" minoccurs="0"> <xs:maxlength value="512"/> element InvoiceSenderInformationDetailsType/InvoiceSenderAddress source <xs:element name="invoicesenderaddress"> element InvoiceSenderInformationDetailsType/InvoiceSenderIntermediatorAddress minlength 8

30 30 maxlength 11 source <xs:element name="invoicesenderintermediatoraddress"> <xs:minlength value="8"/> <xs:maxlength value="11"/> element InvoiceSenderInformationDetailsType/NewInvoiceSenderAddress source <xs:element name="newinvoicesenderaddress" minoccurs="0"> element InvoiceSenderInformationDetailsType/NewInvoiceSenderIntermediatorAddress minlength 8 maxlength 11 source <xs:element name="newinvoicesenderintermediatoraddress" minoccurs="0"> <xs:minlength value="8"/> <xs:maxlength value="11"/> complextype MessageDetailsType children MessageTypeCode MessageTypeText MessageActionCode MessageDate SenderInfoIdentifier used by element FinvoiceSenderInfo/MessageDetails source <xs:complextype name="messagedetailstype"> <xs:sequence> <xs:element name="messagetypecode" type="xs:string" fixed="senderinfo"/> <xs:element name="messagetypetext" type="xs:string"/>

31 31 <xs:element name="messageactioncode"> <xs:enumeration value="add"/> <xs:enumeration value="change"/> <xs:enumeration value="delete"/> <xs:element name="messagedate" type="date"/> <xs:element name="senderinfoidentifier"> <xs:minlength value="1"/> <xs:maxlength value="48"/> </xs:sequence> element MessageDetailsType/MessageTypeCode type xs:string source <xs:element name="messagetypecode" type="xs:string" fixed="senderinfo"/> element MessageDetailsType/MessageTypeText type xs:string source <xs:element name="messagetypetext" type="xs:string"/> element MessageDetailsType/MessageActionCode enumeration ADD enumeration CHANGE enumeration DELETE source <xs:element name="messageactioncode"> <xs:enumeration value="add"/> <xs:enumeration value="change"/> <xs:enumeration value="delete"/> element MessageDetailsType/MessageDate type Date attributes Name Type Use Default Fixed Annotation Format xs:string optional CCYYMMDD

32 32 source <xs:element name="messagedate" type="date"/> element MessageDetailsType/SenderInfoIdentifier minlength 1 maxlength 48 source <xs:element name="senderinfoidentifier"> <xs:minlength value="1"/> <xs:maxlength value="48"/> complextype SellerAccountDetailsType children SellerAccountID SellerBic NewSellerAccountID NewSellerBic used by element FinvoiceSenderInfo/SellerAccountDetails source <xs:complextype name="selleraccountdetailstype"> <xs:sequence> <xs:element name="selleraccountid"> <xs:complextype> <xs:simplecontent> <xs:restriction base="selleraccountidtype"> </xs:simplecontent> <xs:element name="sellerbic" minoccurs="0"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerbictype"> <xs:maxlength value="11"/> </xs:simplecontent> <xs:element name="newselleraccountid" minoccurs="0"> <xs:complextype> <xs:simplecontent> <xs:restriction base="selleraccountidtype"> </xs:simplecontent> <xs:element name="newsellerbic" minoccurs="0"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerbictype"> <xs:maxlength value="11"/>

33 </xs:simplecontent> </xs:sequence> 33 element SellerAccountDetailsType/SellerAccountID type restriction of SellerAccountIDType attributes Name Type Use Default Fixed Annotation IdentificationSch xs:string required emename source <xs:element name="selleraccountid"> <xs:complextype> <xs:simplecontent> <xs:restriction base="selleraccountidtype"> </xs:simplecontent> element SellerAccountDetailsType/SellerBic type restriction of SellerBicType attributes maxlength 11 Name Type Use Default Fixed Annotation IdentificationSch xs:string required BIC emename source <xs:element name="sellerbic" minoccurs="0"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerbictype"> <xs:maxlength value="11"/> </xs:simplecontent> element SellerAccountDetailsType/NewSellerAccountID type restriction of SellerAccountIDType attributes Name Type Use Default Fixed Annotation IdentificationSch xs:string required emename source <xs:element name="newselleraccountid" minoccurs="0"> <xs:complextype> <xs:simplecontent> <xs:restriction base="selleraccountidtype"> </xs:simplecontent>

34 34 element SellerAccountDetailsType/NewSellerBic type restriction of SellerBicType attributes maxlength 11 Name Type Use Default Fixed Annotation IdentificationSch xs:string required BIC emename source <xs:element name="newsellerbic" minoccurs="0"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerbictype"> <xs:maxlength value="11"/> </xs:simplecontent> complextype SellerAccountIDType type extension of xs:string used by attributes elements SellerAccountDetailsType/NewSellerAccountID SellerAccountDetailsType/SellerAccountID Name Type Use Default Fixed Annotation IdentificationSch xs:string required emename source <xs:complextype name="selleraccountidtype"> <xs:simplecontent> <xs:extension base="xs:string"> <xs:attribute name="identificationschemename" use="required"> <xs:enumeration value="iban"/> <xs:enumeration value="bban"/> </xs:attribute> </xs:extension> </xs:simplecontent> complextype SellerBicType type extension of xs:string used by attributes elements SellerAccountDetailsType/NewSellerBic SellerAccountDetailsType/SellerBic Name Type Use Default Fixed Annotation IdentificationSch xs:string required BIC emename source <xs:complextype name="sellerbictype"> <xs:simplecontent> <xs:extension base="xs:string"> <xs:attribute name="identificationschemename" type="xs:string" use="required" fixed="bic"/> </xs:extension> </xs:simplecontent>

35 35 complextype SellerInvoiceDetailsType children SellerDirectDebitIdentifier SellerDirectPaymentIdentifier PaymentInstructionIdentifier SellerIntsructionFreeText SellerInvoiceTypeDetails used by element FinvoiceSenderInfo/SellerInvoiceDetails source <xs:complextype name="sellerinvoicedetailstype"> <xs:sequence> <xs:element name="sellerdirectdebitidentifier" minoccurs="0"> <xs:element name="sellerdirectpaymentidentifier" minoccurs="0"> <xs:element name="paymentinstructionidentifier"> <xs:element name="sellerintsructionfreetext" minoccurs="0"> <xs:maxlength value="140"/> <xs:element name="sellerinvoicetypedetails" minoccurs="0" maxoccurs="unbounded"> <xs:complextype> <xs:sequence> <xs:element name="sellerinvoicetypetext"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerinvoicetypetexttype"> </xs:simplecontent> <xs:element name="sellerinvoiceidentifiertext" minoccurs="0" maxoccurs="2"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerinvoiceidentifiertexttype"> <xs:maxlength value="70"/> </xs:simplecontent>

36 36 </xs:sequence> </xs:sequence> element SellerInvoiceDetailsType/SellerDirectDebitIdentifier source <xs:element name="sellerdirectdebitidentifier" minoccurs="0"> element SellerInvoiceDetailsType/SellerDirectPaymentIdentifier source <xs:element name="sellerdirectpaymentidentifier" minoccurs="0"> element SellerInvoiceDetailsType/PaymentInstructionIdentifier source <xs:element name="paymentinstructionidentifier"> element SellerInvoiceDetailsType/SellerIntsructionFreeText maxlength 140

37 37 source <xs:element name="sellerintsructionfreetext" minoccurs="0"> <xs:maxlength value="140"/> element SellerInvoiceDetailsType/SellerInvoiceTypeDetails children SellerInvoiceTypeText SellerInvoiceIdentifierText source <xs:element name="sellerinvoicetypedetails" minoccurs="0" maxoccurs="unbounded"> <xs:complextype> <xs:sequence> <xs:element name="sellerinvoicetypetext"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerinvoicetypetexttype"> </xs:simplecontent> <xs:element name="sellerinvoiceidentifiertext" minoccurs="0" maxoccurs="2"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerinvoiceidentifiertexttype"> <xs:maxlength value="70"/> </xs:simplecontent> </xs:sequence> element SellerInvoiceDetailsType/SellerInvoiceTypeDetails/SellerInvoiceTypeText type restriction of SellerInvoiceTypeTextType attributes Name Type Use Default Fixed Annotation LanguageCode xs:nmtoken required source <xs:element name="sellerinvoicetypetext"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerinvoicetypetexttype"> </xs:simplecontent>

38 38 element SellerInvoiceDetailsType/SellerInvoiceTypeDetails/SellerInvoiceIdentifierText type restriction of SellerInvoiceIdentifierTextType maxlength 70 attributes Name Type Use Default Fixed Annotation LanguageCode xs:nmtoken required source <xs:element name="sellerinvoiceidentifiertext" minoccurs="0" maxoccurs="2"> <xs:complextype> <xs:simplecontent> <xs:restriction base="sellerinvoiceidentifiertexttype"> <xs:maxlength value="70"/> </xs:simplecontent> complextype SellerInvoiceIdentifierTextType type extension of xs:string used by element SellerInvoiceDetailsType/SellerInvoiceTypeDetails/SellerInvoiceIdentifierText attributes Name Type Use Default Fixed Annotation LanguageCode xs:nmtoken required source <xs:complextype name="sellerinvoiceidentifiertexttype"> <xs:simplecontent> <xs:extension base="xs:string"> <xs:attribute name="languagecode" use="required"> <xs:restriction base="xs:nmtoken"> <xs:enumeration value="fi"/> <xs:enumeration value="se"/> <xs:enumeration value="en"/> </xs:attribute> </xs:extension> </xs:simplecontent> complextype SellerInvoiceTypeTextType type extension of xs:string used by attributes element SellerInvoiceDetailsType/SellerInvoiceTypeDetails/SellerInvoiceTypeText Name Type Use Default Fixed Annotation LanguageCode xs:nmtoken required source <xs:complextype name="sellerinvoicetypetexttype"> <xs:simplecontent> <xs:extension base="xs:string"> <xs:attribute name="languagecode" use="required"> <xs:restriction base="xs:nmtoken"> <xs:enumeration value="fi"/> <xs:enumeration value="se"/> <xs:enumeration value="en"/>

39 39 </xs:attribute> </xs:extension> </xs:simplecontent> complextype SellerPartyDetailsType children SellerPartyIdentifier SellerOrganisationName SellerOrganisationBankName SellerPostalAddressDetails used by element FinvoiceSenderInfo/SellerPartyDetails source <xs:complextype name="sellerpartydetailstype"> <xs:sequence> <xs:element name="sellerpartyidentifier"> <xs:minlength value="1"/> <xs:maxlength value="48"/> <xs:element name="sellerorganisationname" maxoccurs="2"> <xs:element name="sellerorganisationbankname" minoccurs="0" maxoccurs="2"> <xs:element name="sellerpostaladdressdetails" type="sellerpostaladdressdetailstype" minoccurs="0"/> </xs:sequence> element SellerPartyDetailsType/SellerPartyIdentifier minlength 1 maxlength 48 source <xs:element name="sellerpartyidentifier"> <xs:minlength value="1"/> <xs:maxlength value="48"/>

40 40 element SellerPartyDetailsType/SellerOrganisationName minlength 2 source <xs:element name="sellerorganisationname" maxoccurs="2"> element SellerPartyDetailsType/SellerOrganisationBankName minlength 2 source <xs:element name="sellerorganisationbankname" minoccurs="0" maxoccurs="2"> element SellerPartyDetailsType/SellerPostalAddressDetails type SellerPostalAddressDetailsType children SellerStreetName SellerTownName SellerPostCodeIdentifier CountryCode CountryName SellerPostOfficeBoxIdentifier source <xs:element name="sellerpostaladdressdetails" type="sellerpostaladdressdetailstype" minoccurs="0"/>

41 41 complextype SellerPostalAddressDetailsType children SellerStreetName SellerTownName SellerPostCodeIdentifier CountryCode CountryName SellerPostOfficeBoxIdentifier used by element SellerPartyDetailsType/SellerPostalAddressDetails source <xs:complextype name="sellerpostaladdressdetailstype"> <xs:sequence> <xs:element name="sellerstreetname"> <xs:element name="sellertownname"> <xs:element name="sellerpostcodeidentifier"> <xs:minlength value="1"/> <xs:maxlength value="48"/> <xs:element name="countrycode" minoccurs="0"> <xs:length value="2"/> <xs:element name="countryname" minoccurs="0"> <xs:element name="sellerpostofficeboxidentifier" minoccurs="0"> <xs:minlength value="1"/> <xs:maxlength value="48"/>

42 42 </xs:sequence> element SellerPostalAddressDetailsType/SellerStreetName minlength 2 source <xs:element name="sellerstreetname"> element SellerPostalAddressDetailsType/SellerTownName minlength 2 source <xs:element name="sellertownname"> element SellerPostalAddressDetailsType/SellerPostCodeIdentifier minlength 1 maxlength 48 source <xs:element name="sellerpostcodeidentifier"> <xs:minlength value="1"/> <xs:maxlength value="48"/> element SellerPostalAddressDetailsType/CountryCode length 2 source <xs:element name="countrycode" minoccurs="0">

43 43 <xs:length value="2"/> element SellerPostalAddressDetailsType/CountryName minlength 2 source <xs:element name="countryname" minoccurs="0"> element SellerPostalAddressDetailsType/SellerPostOfficeBoxIdentifier minlength 1 maxlength 48 source <xs:element name="sellerpostofficeboxidentifier" minoccurs="0"> <xs:minlength value="1"/> <xs:maxlength value="48"/>

44 FinvoiceSenderInfo-sanoman schemamääritys Schema FinvoiceReceiverInfo.xsd Elements BuyerOrganisationName BuyerPostCodeIdentifier BuyerPostOfficeBoxIdentifier BuyerStreetName BuyerTownName CountryCode CountryName EpiRemittanceIdentifier FinvoiceReceiverInfo InvoiceRecipientAddress InvoiceRecipientIntermediatorAddress InvoiceRecipientLanguageCode InvoiceSenderAddress InvoiceSenderIntermediatorAddress MessageActionCode MessageTypeCode MessageTypeText PaymentInstructionIdentifier ProposedDueDate ProposedInvoicePeriod SellerInvoiceIdentifier SellerOrganisationName SellerOrganisationUnitNumber SellerPartyIdentifier SellerPostCodeIdentifier SellerPostOfficeBoxIdentifier SellerStreetName SellerTownName SellerWebaddressText SenderInfoIdentifier Complex types BuyerPartyDetailsType BuyerPostalAddressDetailsType Date InvoiceRecipientDetailsType InvoiceSenderInformationDetailsType MessageDetailsType SellerAccountDetailsType SellerAccountIDType SellerBicType SellerInvoiceDetailsType SellerInvoiceIdentifierTextType SellerInvoiceTypeTextType SellerPartyDetailsType SellerPostalAddressDetailsType element BuyerOrganisationName minlength 2 source <xs:element name="buyerorganisationname">

45 45 element BuyerPostCodeIdentifier minlength 1 maxlength 48 source <xs:element name="buyerpostcodeidentifier"> <xs:maxlength value="48"/> <xs:minlength value="1"/> element BuyerPostOfficeBoxIdentifier minlength 1 maxlength 48 source <xs:element name="buyerpostofficeboxidentifier"> <xs:maxlength value="48"/> <xs:minlength value="1"/> element BuyerStreetName minlength 2 source <xs:element name="buyerstreetname"> element BuyerTownName minlength 2 source <xs:element name="buyertownname">

46 46 element CountryCode length 2 source <xs:element name="countrycode"> <xs:length value="2"/> element CountryName minlength 2 source <xs:element name="countryname"> element EpiRemittanceIdentifier minlength 2 source <xs:element name="epiremittanceidentifier">

47 47 element FinvoiceReceiverInfo children MessageDetails SellerPartyDetails SellerOrganisationUnitNumber InvoiceSenderInformationDetails SellerAccountDetails SellerInvoiceDetails ReceiverInfoTimeStamp BuyerPartyDetails BuyerOrganisationUnitNumber InvoiceRecipientDetails ProposedDueDateAccepted ProposedDueDate ProposedInvoicePeriodAccepted ProposedInvoicePeriod attributes Name Type Use Default Fixed Annotation Version xs:decimal required source <xs:element name="finvoicereceiverinfo"> <xs:complextype> <xs:sequence> <xs:element name="messagedetails" type="messagedetailstype"/> <xs:element name="sellerpartydetails" type="sellerpartydetailstype"/> <xs:element name="sellerorganisationunitnumber" minoccurs="0"> <xs:minlength value="5"/> <xs:element name="invoicesenderinformationdetails" type="invoicesenderinformationdetailstype"/> <xs:element name="selleraccountdetails" type="selleraccountdetailstype" maxoccurs="unbounded"/> <xs:element name="sellerinvoicedetails" type="sellerinvoicedetailstype"/> <xs:element name="receiverinfotimestamp"> <xs:minlength value="22"/> <xs:maxlength value="22"/>