Web Services - Batch Selling Bill
1 Module Overview
General information about the NetBaron-Web Services interface is provided in a separate document, available from NetBaron support upon request. This document only describes the Batch selling bill Web Services module, which enables access to NetBaron's Batch Selling Bill from external services. The module is used to retrieve data from batch selling bill rows based on various search criteria, as well as adding and removing lines from the batch invoice.
The interfaces do not support multiple currencies; only EUR is supported.
Error handling must be integrated into the interfaces in case of connection interruptions.
The methods available in the module are defined in the WSDL description. The data transmitted over the interface is validated using an XSD file referenced by the WSDL description. The XSD is available at: https://server/ws/batchsellingbill?xsd={version}
Currently, version 1.0 is in use. The XSD file contains detailed element-level descriptions.
1.1 Usage Examples
Search for batch selling bill IDs and recipient information. Retrieve receipts for the accounting period.
Search for batch selling bill row based on the batch selling bill ID
Add batch selling bill rows
Update batch selling bill rows
Delete batch selling bill rows
2 Technical Information
2.1 Service Information
Address: | https://server/ws/batchsellingbill?version={version} Currently version 1.0 is available. |
Authentication: | Organization and the organization-specific Web Services password |
The character set used: | UTF-8 |
Available methods: | Defined in the WSDL description. |
Type of request: | Method call |
Type of response: | Object |
2.2 Methods Overview
2.2.1 Available Methods
Element | Definition |
getBatchSellingBills | Fetch batch selling bills |
getBatchSellingBillIDs | Batch selling bills IDs and recipient information. |
getBatchSellingBillRows | Retrieval of batch selling bill rows based on the batch selling bill ID. |
insertBatchSellingBillRows | Addition of batch selling bill rows. |
updateBatchSellingBillRows | Updating batch selling bill rows. |
removeBatchSellingBillRows | Deleting batch selling bill rows |
2.2 GetBatchSellingBills method
Element | Type | Default | Definition |
BatchSellingBillId | token | Batch selling bill IDs separated by commas | |
InvoiceRecipientPartyIdentifierId | int | Recipient’s ID | |
InvoiceRecipientPartyIdentifier | token | Recipient's Business ID | |
StartDate | date | Start date of the search | |
EndDate | date | End date of the search | |
GetComingBatchSellingBills | boolean | FALSE | Fetch upcoming / future batch invoice data |
GetByState | int | 0 | 0 = All 1 = Incomplete 2 = Unprocessed 3 = Has to be checked |
GetSellerPartyDetails | boolean | FALSE | Include seller information |
GetInvoiceRecipientPartyDetails | boolean | FALSE | Include payer information |
GetInvoiceDetails | boolean | FALSE | Tuodaanko laskun tiedot |
GetInvoiceRows | boolean | FALSE | Include invoice rows |
OderBy | 0 | 0 = By batch selling bill number 1 = Due date 2 = Invoicing date 3 = Entry date 4 = Delivery date 5 = Payment reminder date 6 = Cash discount date 7 = Start date of the billing period 8 = End date of the billing period 9 = Transaction date 10 = Next transaction date 11 = Corrected transaction date 12 = Next invoicing date 13 = Contract period start date 14 = Contract period end date 15 = Contract review date 16 = Contract suspension start date 17 = Contract suspension end date | |
Order | token | ASC | Order: ASC = ascending DESC = descending |
2.2.3 GetBatchSellingBills-method response
Element | Type | Definition |
ResponseStatus | int (0/1) | 0=Error 1=OK, Operation successfull |
ResponseMessage | string | Possible additional explanation of events, errors, etc. |
NumberOfInvoices | int | The number of found invoices |
Invoices | array | Found invoices |
2.2.4 Invoices-table
Element | Type | Definition |
InvoiceIdentifierId | int(11) | Identifier of an individual invoice |
SellerPartyDetails | object | Seller information |
SellerOrganisationUnitNumber | string | EDI identifier (OVT) |
SellerContactPersonName | string | Contact person |
SellerCommunicationDetails | object | Contact details |
SellerInformationDetails | object | Seller Information |
BatchInvoiceRecipientPartyDetails | array | Recipient information |
InvoiceDetails | object | Invoice details |
InvoiceRow | object | Invoice rows |
2.2.4.1 SellerPartyDetails-object
Element | Type | Definition |
SellerPartyIdentifier | string | Business ID |
SellerOrganisationName | array(1-2) | Seller name |
SellerOrganisationTaxCode | string | VAT number |
SellerPostalAddressDetails | object | Address information |
2.2.4.1.1 SellerOrganisationName-taulukko
Element | Type | Definition |
SellerOrganisationName | string | Seller’s name |
2.2.4.1.2 SellerPostalAddressDetails-object
Element | Type | Definition |
SellerStreetName | array(0...2) | Street addresses |
SellerTownName | string | Business place |
SellerPostCodeIdentifier | string | Postal code |
SellerCountrySubdivision | string | Country subdivision Area / unit |
CountryCode | string(2) | Country code |
CountryName | string | Contry |
SellerPostOfficeBoxIdentifier | string | Blank |
2.2.4.1.2.1 SellerStreetName-table
Table 8: SellerStreetName-table is shown below.
Element | Type | Definition |
SellerStreetName | string | Street address |
2.2.4.2 SellerCommunicationDetails-object
Element | Type | Definition |
SellerPhoneNumberIdentifier | string | Phone number |
SellerEmailaddressIdentifier | string | E-mail address |
2.2.4.3 SellerInformationDetails-object
Element | Type | Definition |
SellerHomeTownName | string | Registered office / home town |
SellerPhoneNumber | string | Phone number |
SellerCommonEmailaddressIdentifier | string | E-mail address |
SellerWebaddressIdentifier | string | Company website |
SellerAccountDetails | array(0-6) | Bank accounts |
2.2.4.3.1 SellerAccountDetails-table
Element | Type | Definition |
SellerAccountID | array(0...2) | Bank account number in IBAN format |
SellerBic | string | BIC |
2.2.4.4 BatchInvoiceRecipientPartyDetails-table
Element | Type | Definition |
InvoiceRecipientOrganisationUnitNumber | string | EDI identifier (OVT) |
InvoiceRecipientContactPersonName | string | Contact person |
InvoiceRecipientCommunicationDetails | object | Contact information |
2.2.4.5 InvoiceRecipientPartyDetails-object
Element | Type | Definition |
InvoiceRecipientPartyIdentifierId | int | Identifier information |
InvoiceRecipientPartyIdentifier | string | Business ID |
InvoiceRecipientOrganisationName | array(1-2) | Customer’s name |
InvoiceRecipientOrganisationTaxCode | string | VAT number |
InvoiceRecipientPostalAddressDetails | object | Address information |
InvoiceRecipientRoleId | int | Customer type ID |
InvoiceRecipientInvoiceHandle | string | Invoice handling procedure |
2.2.4.5.1 InvoiceRecipientOrganisationName-table
Element | Type | Definition |
InvoiceRecipientOrganisationName | string | Customer’s name |
2.2.4.5.2 InvoiceRecipientPostalAddressDetails-object
Element | Type | Definition |
InvoiceRecipientStreetName | array(0...2) | Street addresses |
InvoiceRecipientTownName | string | Business address |
InvoiceRecipientPostCodeIdentifier | string | Postal code |
InvoiceRecipientCountrySubdivision | string | Country subdivision Area / unit |
CountryCode | string(2) | Country code |
CountryName | string | Country |
InvoiceRecipientPostOfficeBoxIdentifier | string | Blank |
2.2.4.5.2.1 InvoiceRecipientStreetName-table
Table 16: InvoiceRecipientStreetName-table is shown below.
Element | Type | Definition |
InvoiceRecipientStreetName | string | Street address |
2.2.4.6 InvoiceRecipientCommunicationDetails-object
Element | Type | Definition |
InvoiceRecipientPhoneNumberIdentifier | string | Phone number |
InvoiceRecipientEmailaddressIdentifier | string | E-mail address |
2.2.4.7 InvoiceDetails-object
Element | Type | Definition |
InvoiceNumber | string | Invoice number |
InvoiceDate | Date of invoice | |
SellerReferenceIdentifier | string | Seller’s reference |
OrderIdentifier | string | Buyer’s reference |
AgreementIdentifier | string | Contract / agreement number |
BuyerReferenceIdentifier | string | Site ID |
ProjectReferenceIdentifier | string | Project number |
InvoiceTotalVatExcludedAmount | double(####,##) | VAT excluded amount |
InvoiceTotalVatAmount | double(####,##) | VAT amount |
InvoiceTotalVatIncludedAmount | double(####,##) | Total amount including tax |
AmountCurrencyIdentifier | string(3) | Currency |
InvoiceFreeText | array | Extra text |
PaymentTermsDetails | object | Term of payment |
TenderReference | string | Offer number |
PaymentDay | date | Payment day |
NextPaymentDayDate | date | Next payment date |
FixedPaymentDayDate | date | Corrected payment date |
NextBillingDate | date | Next billing date |
ContractStartDate | date | Contract start date |
ContractEndDate | date | Last day of contract |
ContractCheckDate | date | Contract review date |
ContratPauseStartDate | date | Contract suspension start date |
ContractPauseEndDate | date | Contract suspension end date |
ExecutionIntervalDays | int | Payment interval in days |
ExecutionIntervalMonths | int | Payment interval in months |
StartDate | date | Start date of billing period |
EndDate | date | End date of billing period |
2.2.4.7.1 InvoiceFreeText-table
Element | Type | Definition |
InvoiceFreeText | string |
2.2.4.7.2 PaymentTermsDetails-object
Element | Type | Definition |
PaymentTermsFreeText | string | Term of payment |
InvoiceDueDate | date(YYYY-mm-dd) | Due Date |
CashDiscountDate | date(YYYY-mm-dd) | Cash discount date |
CashDiscountBaseAmount | double(####,##) | Cash discount base amount |
CashDiscountPercent | double(####,##) | Cash discount percentage |
CashDiscountAmount | double(####,##) | Cash discount amount |
PaymentOverDueFineDetails | object | Late payment details |
2.2.4.7.3 PaymentOverDueFineDetails-object
Element | Type | Definition |
PaymentOverDueFineFreeText | string | Late payment interest text |
PaymentOverDueFinePercent | double(####,##) | Interest |
PaymentOverDueFixedAmount | double(####,##) | Amount |
2.2.4.8 BatchBillRows-table
Element | Type | Definition |
RowIdentifier | Int | Row ID |
RecurringBilling | string | Regular payment row (Y/N) |
ArticleIdIdentifier | string | Product ID |
ArticleIdentifier | string | Product number |
ArticleName | string | Product |
DeliveredQuantity | decimal | Quantity |
RowVatRatePercent | decimal | VAT % |
RowDiscountPercent | desimal | Discount % |
UnitPriceAmount | decimal | Product price |
RowVatExcludedAmount | decimal | Net amount |
CurrentNetSum | decimal | Current net amount |
RowVatAmount | decimal | VAT amount |
RowAmount | decimal | Total amount |
CurrentTotalSum | decimal | Current total amount |
AmountCurrencyIdentifier | string | Currency |
QuantityUnitCode | string | Unit |
CustomerCostCenter | string | Customer cost center |
RowAccountDimensionText | string | Cost center |
RowNormalProposedAccountIdentifier | string | Customer’s account |
RowVatCode | string | VAT code |
SerialNumberIdentifier | string | Serial number |
2.2.4.9 ArticleInfoUrlText-table
Element | Type | Definition |
ArticleInfoUrlText | string | Product extra info |
2.2.5 GetBatchSellingBillIDs method
This query retrieves batch selling bills from the interface for a specified time period. The batch selling bills can be sorted either by invoicing date or payment date.
Element | Type | Definition |
BusinessId | token | Business ID |
CustomerNumber | token | Customer number in the register |
StartDate | date | Start date of the search. Can be left empty. |
EndDate | date | End date of the search. Can be left empty. |
OrderByField | token | Sort by billing date or settlement date. BillingDate = sort by billing date SettlementDate = sort by settlement date |
Order | token | Descending or ascending order. Default ASC. ASC = ascending DESC = descending |
2.2.5.1 GetBatchSellingBillIDs-method call response
Element | Type | Definition |
getBatchSellingBillIDsResponse | object | Contains BatchBills-object |
2.2.5.2 Contents of the BatchBills object
Element | Type | Definition |
BatchBill | object | Includes 0…n pcs of BatchBill objects |
2.2.5.3 Contents of the BatchBill object
Element | Type | Definition |
BatchBillId | int | Batch selling bill ID |
BillingDate | date | Invoicing date of the batch selling bill |
SettlementDate | date | Payment date of the batch selling bill |
Recipients | object | Receiver of the bacth selling bill 0…n pcs. |
2.2.5.4 Contents of the Recipients object
Element | Type | Definition |
RecipientCustomerNumber | token | Customer number in the register. |
RecipientBusinessId | token | Business ID |
RecipientName | token | Receiver’s name. 0…2 pcs |
RecipientContactPerson | token | Receiver’s contact person |
RecipientAddress | token | Receiver’s address. 0…2 pcs |
RecipientPostalNumber | token | Receiver’s postal code |
RecipientCity | token | Receiver’s town |
2.2.6 GetBatchSellingBillRows method
This query retrieves the batch selling bill rows from the interface by using the batch selling bill ID.
Element | Type | Definition |
BatchBillId | Token | IDs of the batch selling bill rows to be searched, separated by commas |
2.2.6.1 GetBatchSellingBillRows Method call response
Element | Type | Definition |
BatchBills | object | Batch selling bills |
- BatchBillId | int | Batch selling bill ID |
- BatchBillRows | object | Batch selling bill rows |
2.2.7 Contents of the BatchBillRows-object
Element | Type | Definition |
RowIdentifier | Int | Row ID |
RecurringBilling | string | Recurring item row. (Y/N) |
ArticleIdIdentifier | string | Product ID |
ArticleIdentifier | string | Product number |
ArticleName | string | Product |
DeliveredQuantity | decimal | Quantity |
RowVatRatePercent | decimal | VAT % |
RowDiscountPercent | desimal | Discount % |
UnitPriceAmount | decimal | Price of the product |
RowVatExcludedAmount | decimal | Net price |
CurrentNetSum | decimal | Current net price |
RowVatAmount | decimal | VAT amount |
RowAmount | decimal | Total amount |
CurrentTotalSum | decimal | Current total amount |
AmountCurrencyIdentifier | string | Currency |
QuantityUnitCode | string | Unit |
CustomerCostCenter | string | Customer’s cost center |
RowAccountDimensionText | string | Cost center |
RowNormalProposedAccountIdentifier | string | Customer’s account |
RowVatCode | string | VAT-code |
SerialNumberIdentifier | string | Serial number |
2.2.8 InsertBatchSellingBillRows method
The method is used to add rows to a batch selling bill.
Element | Type | Mandatory | Definition |
DublicateRowHandling | int | Duplicate row handling. (def=2) | |
BatchBills | object | Yes | Batch selling bills |
- BatchBillId | int | Yes | Batch selling bill ID |
- BatchBillRows | object | Yes | Batch selling bill rows |
DublicateRowHandling | 0 = The existing row is replaced. 1 = A new row is created below the existing product row. 2 = A new product row is created at the end of all product rows. 3 = No product row is created; an error message is returned. |
2.2.9 BatchBillRows Object Contents
Element | Type | Mandatory | Definition |
ArticleIdIdentifier | string | Product ID | |
RecurringBilling | string | Recurring item row (Y/N) | |
ArticleIdentifier | string | Yes | Product number |
ArticleName | string | Product name | |
DeliveredQuantity | decimal | Quantity | |
RowVatRatePercent | decimal | VAT % | |
RowDiscountPercent | desimal | Discount % | |
UnitPriceAmount | decimal | Product price | |
RowVatExcludedAmount | decimal | Net price | |
CurrentNetSum | decimal | Current net price | |
RowVatAmount | decimal | VAT amount | |
RowAmount | decimal | Total amount | |
CurrentTotalSum | decimal | Current total amount | |
AmountCurrencyIdentifier | string | Currency | |
QuantityUnitCode | string | Unit | |
CustomerCostCenter | string | Customer Cost Center | |
RowAccountDimensionText | string | Cost Center | |
RowNormalProposedAccountIdentifier | string | Customer’s account | |
RowVatCode | string | VAT-code | |
SerialNumberIdentifier | string | Serial number |
2.2.9.1 InsertBatchSellingBillRows-method call response
Element | Type | Definition |
ReturnMessage | object | Returns OK: [product number], OR product_not_found_in_register: [product number] |
ReturnMessage | Returns the status of the row addition, or failure if the product is not found in the product register. |
2.2.10 UpdateBatchSellingBillRows method
The method allows updating the rows of a batch selling bill.
Element | Type | Mandatory | Definition |
BatchBills | object | Yes | Batch selling bills |
- BatchBillId | int | Yes | Batch selling bill ID |
- BatchBillRows | object | Yes | Batch selling bill rows |
2.2.11 Contents of the BatchBillRows-object
Element | Type | Mandatory | Definition |
RowIdentifier | Int | Yes | Row ID |
RecurringBilling | string | Recurring item row (Y/N) | |
ArticleIdIdentifier | string | Product ID | |
ArticleIdentifier | string | Yes | Product number |
ArticleName | string | Product number | |
DeliveredQuantity | decimal | Quantity | |
RowVatRatePercent | decimal | VAT % | |
RowDiscountPercent | decimal | Discount % | |
UnitPriceAmount | decimal | Product price | |
RowVatExcludedAmount | decimal | Net price | |
CurrentNetSum | decimal | Current net price | |
RowVatAmount | decimal | VAT amount | |
RowAmount | decimal | Total amount | |
CurrentTotalSum | decimal | Current total amount | |
AmountCurrencyIdentifier | string | Currency | |
QuantityUnitCode | string | Unit | |
CustomerCostCenter | string | Customer Cost Center | |
RowAccountDimensionText | string | Cost Center | |
RowNormalProposedAccountIdentifier | string | Customer’s account | |
RowVatCode | string | VAT-code | |
SerialNumberIdentifier | string | Serial number |
2.2.11.1 Response of the UpdateBatchSellingBillRows-method call
Element | Type | Definition |
ReturnMessage | object | Returns OK if the update was successful. |
2.2.12 RemoveBatchSellingBillRows method
The method allows deleting rows from a batch selling bill.
Element | Type | Definition |
BatchBillId | Int | Batch selling bill ID |
RemoveAllRows | string | Delete all rows Y/N |
RemoveRows | string | Row IDs, separated by commas: id1,id2,idn |
2.2.12.1 Response of the RemoveBatchSellingBillRows-method call
Element | Type | Definition |
ReturnMessage | object | Rows successfully deleted: rows_removed: id1,id2,idn |
3 Code samples
It should be noted that the code samples presented in the documents are examples of how the interface can be used. Implementation of the codes requires PHP knowledge from the www-service provider. NetBaron Solutions OY is not responsible for any direct or indirect damage and costs related to the sample codes when a third party does the implementation and further development.
Please note: The code created by your software developer must not cause server overload situations. We reserve the right to bill the creator of the software code or the end customer for system failure in the server environment. If necessary, please get the software code checked by sending it to tuki@netbaron.fi and adding the mention: "WS-Batch selling bill interface software code to product development for review and possible feedback".
3.1 PHP
3.1.1 Initializing the client
<?php
function getresp($responsex, $pref=""){
$responserows = "";
foreach($responsex as $k => $r){
if(is_array($r)){
$responserows .= $pref."$k => Array(<br>".getresp($r,$pref." ").$pref."),<br>";
} else if(is_object($r)){
$responserows .= $pref."$k => Object(<br>".getresp($r,$pref." ").$pref."),<br>";
} else $responserows .= $pref."$k => $r<br>";
}
return $responserows;
}
$ns = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd';
$token = new stdClass;
// Client-puolen encodingista riippuen, mahdollisesti utf_encode tarvitaan
$token->Username = new SOAPVar ("username", XSD_STRING, null, null, null, $ns);
$token->Password = new SOAPVar("password", XSD_STRING, null, null, null, $ns);
$wsec = new stdClass;
$wsec->UsernameToken = new SoapVar($token, SOAP_ENC_OBJECT, null, null, null, $ns);
$soapHeaders[] = new SOAPHeader($ns, 'Security', $wsec->UsernameToken, true);
/**
* Client
*/
$client = new SoapClient(null, array(
"location" => "https://server/ws/batchsellingbill",
"uri" => "urn:NBWS",
'style' => SOAP_RPC,
'use' => SOAP_LITERAL,
"soap_version" => SOAP_1_2,
"compression" => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP | 5,
"trace" => 1)
);
/**
* Set headers
*/
$client->__setSoapHeaders( $soapHeaders );
?>
3.1.2 GetBatchSellingBillIDs
<?php
try{
$Request = new stdClass();
$Request->getBatchSellingBillIDs = true;
$Request->BusinessId = new SoapVar("1793463-5", XSD_STRING, null, null, null, $ns);
$response = $client->getBatchSellingBillIDs( new SoapVar($Request, SOAP_ENC_OBJECT,"","","Request") );
if(is_object($response)){
$responserows = getresp($response);
} else $responserows = $response;
}
catch(SoapFault $fault){
$response .= "<b>SOAP Fault:</b><pre>faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring}</pre>";
}
?>
3.1.3 GetBatchSellingBillRows
<?php
/**
* Call PHP soap
*/
try{
$Request = new stdClass();
$Request->getBatchSellingBillRowsRequest = true;
$Request->BatchBillId = new SoapVar("1", XSD_STRING, null, null, null, $ns);
$response = $client->getBatchSellingBillRows( new SoapVar($Request, SOAP_ENC_OBJECT,"","","Request") );
if(is_object($response)){
$responserows = getresp($response);
} else $responserows = $response;
}
catch(SoapFault $fault){
$response .= "<b>SOAP Fault:</b><pre>faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring}</pre>";
}
?>
3.1.4 InsertBatchSellingBillRows
<?php
/**
* Call PHP soap
*/
try{
$Request = new stdClass();
$Request->insertBatchSellingBillRowsRequest = true;
$Request->DublicateRowHandling = new SoapVar("1", XSD_STRING, null, null, null, $ns);
$BatchBill = new stdClass();
$BatchBill->BatchBillId = new SoapVar("1", XSD_STRING, null, null, null, $ns);
$BatchBillRow = new stdClass();
$BatchBillRow->ArticleIdentifier = new SoapVar("Tuote 1", XSD_STRING, null, null, null, $ns);
$BatchBillRow->DeliveredQuantity = new SoapVar("10.333", XSD_STRING, null, null, null, $ns);
$BatchBillRow->QuantityUnitCode = new SoapVar("kpl", XSD_STRING, null, null, null, $ns);
$BatchBillRow->RowFreeText = new SoapVar("Tuotteen kuvaus", XSD_STRING, null, null, null, $ns);
$BatchBill->BatchBillRow = new SoapVar($BatchBillRow, SOAP_ENC_OBJECT, null, null, null, $ns);
$Request->BatchBill = new SoapVar($BatchBill, SOAP_ENC_OBJECT, null, null, null, $ns);
$response = $client->insertBatchSellingBillRows( new SoapVar($Request, SOAP_ENC_OBJECT,"","","Request") );
if(is_object($response)){
$responserows = getresp($response);
} else $responserows = $response;
}
catch(SoapFault $fault){
$response .= "<b>SOAP Fault:</b><pre>faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring}</pre>";
}
?>
3.1.5 UpdateBatchSellingBillRows
<?php
/**
* Call PHP soap
*/
try{
$Request = new stdClass();
$Request->updateBatchSellingBillRowsRequest = true;
$BatchBill = new stdClass();
$BatchBill->BatchBillId = new SoapVar("1", XSD_STRING, null, null, null, $ns);
$BatchBillRow = new stdClass();
$BatchBillRow->RowIdentifier = new SoapVar("375", XSD_STRING, null, null, null, $ns);
$BatchBillRow->ArticleIdentifier = new SoapVar("Tuote 3", XSD_STRING, null, null, null, $ns);
$BatchBillRow->DeliveredQuantity = new SoapVar("10.333", XSD_STRING, null, null, null, $ns);
$BatchBillRow->QuantityUnitCode = new SoapVar("kpl", XSD_STRING, null, null, null, $ns);
$BatchBillRow->RowFreeText = new SoapVar("Tuotteen kuvaus", XSD_STRING, null, null, null, $ns);
$BatchBill->BatchBillRow = new SoapVar($BatchBillRow, SOAP_ENC_OBJECT, null, null, null, $ns);
$Request->BatchBill = new SoapVar($BatchBill, SOAP_ENC_OBJECT, null, null, null, $ns);
$response = $client->updateBatchSellingBillRows( new SoapVar($Request, SOAP_ENC_OBJECT,"","","Request") );
if(is_object($response)){
$responserows = getresp($response);
} else $responserows = $response;
}
catch(SoapFault $fault){
$response .= "<b>SOAP Fault:</b><pre>faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring}</pre>";
}
?>
3.1.6 RemoveBatchSellingBillRows
<?php
/**
* Call PHP soap
*/
try{
$Request = new stdClass();
$Request->removeBatchSellingBillRowsRequest = true;
$Request->BatchBillId = new SoapVar("1", XSD_STRING, null, null, null, $ns);
$Request->RemoveRows = new SoapVar("375", XSD_STRING, null, null, null, $ns);
$response = $client->removeBatchSellingBillRows( new SoapVar($Request, SOAP_ENC_OBJECT,"","","Request") );
if(is_object($response)){
$responserows = getresp($response);
} else $responserows = $response;
}
catch(SoapFault $fault){
$response .= "<b>SOAP Fault:</b><pre>faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring}</pre>";
}
?>
3.2 XML
3.2.1 GetBatchSellingBills
3.2.1.1 Request
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope"
xmlns:ns1="urn:NBWS:batchsellingbill:v1.0"
xmlns:ns2="urn:NBWS:invoice:v1.1"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<env:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>username</wsse:Username>
<wsse:Password>password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</env:Header>
<env:Body>
<ns1:getBatchSellingBillsRequest>
<ns1:BatchSellingBillId>1015,1114</ns1:BatchSellingBillId>
<ns1:InvoiceRecipientPartyIdentifierId>41</ns1:InvoiceRecipientPartyIdentifierId>
<ns1:InvoiceRecipientPartyIdentifier>1234567-1</ns1:InvoiceRecipientPartyIdentifier>
<ns1:StartDate>2023-01-01</ns1:StartDate>
<ns1:EndDate>2024-03-29</ns1:EndDate>
<ns1:GetComingBatchSellingBills>false</ns1:GetComingBatchSellingBills>
<ns1:GetByState>0</ns1:GetByState>
<ns1:GetSellerPartyDetails>true</ns1:GetSellerPartyDetails>
<ns1:GetInvoiceRecipientPartyDetails>true</ns1:GetInvoiceRecipientPartyDetails>
<ns1:GetInvoiceDetails>true</ns1:GetInvoiceDetails>
<ns1:GetInvoiceRows>true</ns1:GetInvoiceRows>
<ns1:OrderBy>10</ns1:OrderBy>
<ns1:Order>ASC</ns1:Order>
</ns1:getBatchSellingBillsRequest>
</env:Body>
</env:Envelope>
3.2.1.2 Response
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope"
xmlns:ns1="urn:NBWS:batchsellingbill:v1.0"
xmlns:ns2="urn:NBWS:invoice:v1.1">
<env:Body>
<ns1:getBatchSellingBillsResponse>
<ns1:ResponseStatus>1</ns1:ResponseStatus>
<ns1:ResponseMessage></ns1:ResponseMessage>
<ns1:NumberOfInvoices>1</ns1:NumberOfInvoices>
<ns1:BatchInvoices>
<ns1:Invoice>
<ns1:InvoiceIdentifierId>1015</ns1:InvoiceIdentifierId>
<ns1:SellerPartyDetails>
<ns1:SellerPartyIdentifier>123456-7</ns1:SellerPartyIdentifier>
<ns1:SellerOrganisationName>
<ns1:SellerOrganisationName>Asiakasesittely Oy</ns1:SellerOrganisationName>
<ns1:SellerOrganisationName></ns1:SellerOrganisationName>
</ns1:SellerOrganisationName>
</ns1:SellerPartyDetails>
<ns1:SellerOrganisationUnitNumber>0012345676</ns1:SellerOrganisationUnitNumber>
<ns1:SellerContactPersonName>Tepp Testaaja</ns1:SellerContactPersonName>
<ns1:SellerCommunicationDetails>
<ns1:SellerPhoneNumberIdentifier>040 111 1113</ns1:SellerPhoneNumberIdentifier>
<ns1:SellerEmailaddressIdentifier>asiakas.toimipaikka@esittely.fi</ns1:SellerEmailaddressIdentifier>
</ns1:SellerCommunicationDetails>
<ns1:BatchInvoiceRecipientPartyDetails>
<ns1:InvoiceRecipientOrganisationName>
<ns1:InvoiceRecipientOrganisationName>Asiakas Oy</ns1:InvoiceRecipientOrganisationName>
<ns1:InvoiceRecipientOrganisationName></ns1:InvoiceRecipientOrganisationName>
</ns1:InvoiceRecipientOrganisationName>
<ns1:InvoiceRecipientPostalAddressDetails>
<ns1:InvoiceRecipientStreetName>
<ns1:InvoiceRecipientStreetName>Admintie 7</ns1:InvoiceRecipientStreetName>
<ns1:InvoiceRecipientStreetName>3. kerros</ns1:InvoiceRecipientStreetName>
</ns1:InvoiceRecipientStreetName>
<ns1:InvoiceRecipientTownName>HKI</ns1:InvoiceRecipientTownName>
<ns1:InvoiceRecipientPostCodeIdentifier>00100</ns1:InvoiceRecipientPostCodeIdentifier>
<ns1:InvoiceRecipientCountrySubdivision></ns1:InvoiceRecipientCountrySubdivision>
<ns1:CountryCode>FI</ns1:CountryCode>
</ns1:InvoiceRecipientPostalAddressDetails>
<ns1:InvoiceRecipientOrganisationUnitNumber></ns1:InvoiceRecipientOrganisationUnitNumber>
<ns1:InvoiceRecipientContactPersonName></ns1:InvoiceRecipientContactPersonName>
<ns1:InvoiceRecipientCommunicationDetails>
<ns1:InvoiceRecipientPhoneNumberIdentifier></ns1:InvoiceRecipientPhoneNumberIdentifier>
<ns1:InvoiceRecipientEmailaddressIdentifier>matti.meikäläinen@testi.fi</ns1:InvoiceRecipientEmailaddressIdentifier>
</ns1:InvoiceRecipientCommunicationDetails>
</ns1:BatchInvoiceRecipientPartyDetails>
<ns1:BatchInvoiceRecipientPartyDetails>
<ns1:InvoiceRecipientOrganisationName>
<ns1:InvoiceRecipientOrganisationName>Äijälä Antti</ns1:InvoiceRecipientOrganisationName>
<ns1:InvoiceRecipientOrganisationName></ns1:InvoiceRecipientOrganisationName>
</ns1:InvoiceRecipientOrganisationName>
<ns1:InvoiceRecipientPostalAddressDetails>
<ns1:InvoiceRecipientStreetName>
<ns1:InvoiceRecipientStreetName>Äijäläntie 31</ns1:InvoiceRecipientStreetName>
<ns1:InvoiceRecipientStreetName></ns1:InvoiceRecipientStreetName>
</ns1:InvoiceRecipientStreetName>
<ns1:InvoiceRecipientTownName>Helsinki</ns1:InvoiceRecipientTownName>
<ns1:InvoiceRecipientPostCodeIdentifier>01100</ns1:InvoiceRecipientPostCodeIdentifier>
<ns1:InvoiceRecipientCountrySubdivision></ns1:InvoiceRecipientCountrySubdivision>
<ns1:CountryCode>FI</ns1:CountryCode>
</ns1:InvoiceRecipientPostalAddressDetails>
<ns1:InvoiceRecipientOrganisationUnitNumber></ns1:InvoiceRecipientOrganisationUnitNumber>
<ns1:InvoiceRecipientContactPersonName></ns1:InvoiceRecipientContactPersonName>
<ns1:InvoiceRecipientCommunicationDetails>
<ns1:InvoiceRecipientPhoneNumberIdentifier></ns1:InvoiceRecipientPhoneNumberIdentifier>
<ns1:InvoiceRecipientEmailaddressIdentifier></ns1:InvoiceRecipientEmailaddressIdentifier>
</ns1:InvoiceRecipientCommunicationDetails>
</ns1:BatchInvoiceRecipientPartyDetails>
<ns1:BatchInvoiceRecipientPartyDetails>
<ns1:InvoiceRecipientOrganisationName>
<ns1:InvoiceRecipientOrganisationName>Testi Oy</ns1:InvoiceRecipientOrganisationName>
<ns1:InvoiceRecipientOrganisationName></ns1:InvoiceRecipientOrganisationName>
</ns1:InvoiceRecipientOrganisationName>
<ns1:InvoiceRecipientPostalAddressDetails>
<ns1:InvoiceRecipientStreetName>
<ns1:InvoiceRecipientStreetName>Temppelikatu 9 D</ns1:InvoiceRecipientStreetName>
<ns1:InvoiceRecipientStreetName></ns1:InvoiceRecipientStreetName>
</ns1:InvoiceRecipientStreetName>
<ns1:InvoiceRecipientTownName>VANTAA</ns1:InvoiceRecipientTownName>
<ns1:InvoiceRecipientPostCodeIdentifier>01200</ns1:InvoiceRecipientPostCodeIdentifier>
<ns1:InvoiceRecipientCountrySubdivision></ns1:InvoiceRecipientCountrySubdivision>
<ns1:CountryCode>FI</ns1:CountryCode>
</ns1:InvoiceRecipientPostalAddressDetails>
<ns1:InvoiceRecipientOrganisationUnitNumber>659158</ns1:InvoiceRecipientOrganisationUnitNumber>
<ns1:InvoiceRecipientContactPersonName>Pekka P</ns1:InvoiceRecipientContactPersonName>
<ns1:InvoiceRecipientCommunicationDetails>
<ns1:InvoiceRecipientPhoneNumberIdentifier>0405555555</ns1:InvoiceRecipientPhoneNumberIdentifier>
<ns1:InvoiceRecipientEmailaddressIdentifier>tuki@netbaron.fi</ns1:InvoiceRecipientEmailaddressIdentifier>
</ns1:InvoiceRecipientCommunicationDetails>
</ns1:BatchInvoiceRecipientPartyDetails>
<ns1:InvoiceDetails>
<ns1:InvoiceNumber>1015</ns1:InvoiceNumber>
<ns1:InvoiceDate>2024-04-02</ns1:InvoiceDate>
<ns1:PaymentDay>2023-11-30</ns1:PaymentDay>
<ns1:NextPaymentDayDate>2024-03-31</ns1:NextPaymentDayDate>
<ns1:FixedPaymentDayDate>2024-04-02</ns1:FixedPaymentDayDate>
<ns1:NextBillingDate>2024-03-31</ns1:NextBillingDate>
<ns1:ContractStartDate>0000-00-00</ns1:ContractStartDate>
<ns1:ContractEndDate>0000-00-00</ns1:ContractEndDate>
<ns1:ContractCheckDate>0000-00-00</ns1:ContractCheckDate>
<ns1:ContratPauseStartDate>0000-00-00</ns1:ContratPauseStartDate>
<ns1:ContractPauseEndDate>0000-00-00</ns1:ContractPauseEndDate>
<ns1:StartDate>2024-03-30</ns1:StartDate>
<ns1:EndDate>2024-04-29</ns1:EndDate>
<ns1:ExecutionIntervalDays>0</ns1:ExecutionIntervalDays>
<ns1:ExecutionIntervalMonths>1</ns1:ExecutionIntervalMonths>
<ns1:SellerReferenceIdentifier>gdfsgdfs</ns1:SellerReferenceIdentifier>
<ns1:OrderIdentifier>gdfsgdfs</ns1:OrderIdentifier>
<ns1:AgreementIdentifier>536</ns1:AgreementIdentifier>
<ns1:BuyerReferenceIdentifier>UUSI TYöMAA</ns1:BuyerReferenceIdentifier>
<ns1:ProjectReferenceIdentifier>5</ns1:ProjectReferenceIdentifier>
<ns1:InvoiceTotalVatExcludedAmount>12.02</ns1:InvoiceTotalVatExcludedAmount>
<ns1:InvoiceTotalVatAmount>2.88</ns1:InvoiceTotalVatAmount>
<ns1:InvoiceTotalVatIncludedAmount>14.9</ns1:InvoiceTotalVatIncludedAmount>
<ns1:AmountCurrencyIdentifier>EUR</ns1:AmountCurrencyIdentifier>
<ns1:InvoiceFreeText>HUOM! Tilinumeromme on muuttunut 1.1.2015 alkaen. </ns1:InvoiceFreeText>
<ns1:PaymentTermsDetails>
<ns1:PaymentTermsFreeText></ns1:PaymentTermsFreeText>
<ns1:InvoiceDueDate>2024-04-16</ns1:InvoiceDueDate>
<ns1:CashDiscountDate>2024-04-16</ns1:CashDiscountDate>
<ns1:CashDiscountBaseAmount>14.9</ns1:CashDiscountBaseAmount>
<ns1:CashDiscountPercent>0</ns1:CashDiscountPercent>
<ns1:CashDiscountAmount>14.9</ns1:CashDiscountAmount>
<ns1:PaymentOverDueFineDetails>
<ns1:PaymentOverDueFineFreeText>Viivästyskorko 0%</ns1:PaymentOverDueFineFreeText>
<ns1:PaymentOverDueFinePercent>0</ns1:PaymentOverDueFinePercent>
<ns1:PaymentOverDueFixedAmount>0</ns1:PaymentOverDueFixedAmount>
</ns1:PaymentOverDueFineDetails>
</ns1:PaymentTermsDetails>
<ns1:TenderReference>6534</ns1:TenderReference>
</ns1:InvoiceDetails>
<ns1:InvoiceRow>
<ns2:RowIdentifier>826</ns2:RowIdentifier>
<ns2:ArticleIdentifier>00644</ns2:ArticleIdentifier>
<ns2:ArticleName>Pakkausteipin katkoja Herlitz</ns2:ArticleName>
<ns2:SerialNumberIdentifier></ns2:SerialNumberIdentifier>
<ns2:DeliveredQuantity>1</ns2:DeliveredQuantity>
<ns2:QuantityUnitCode>kpl</ns2:QuantityUnitCode>
<ns2:UnitPriceAmount>12.016</ns2:UnitPriceAmount>
<ns2:RowProjectReferenceIdentifier>5</ns2:RowProjectReferenceIdentifier>
<ns2:RowFreeText>max. 66m/50mm</ns2:RowFreeText>
<ns2:RowNormalProposedAccountIdentifier>0</ns2:RowNormalProposedAccountIdentifier>
<ns2:RowAccountDimensionText>130</ns2:RowAccountDimensionText>
<ns2:RowDiscountPercent>0</ns2:RowDiscountPercent>
<ns2:RowVatRatePercent>24</ns2:RowVatRatePercent>
<ns2:RowVatCode>20</ns2:RowVatCode>
<ns2:RowVatAmount>2.88</ns2:RowVatAmount>
<ns2:RowVatExcludedAmount>12.02</ns2:RowVatExcludedAmount>
<ns2:RowAmount>14.9</ns2:RowAmount>
<ns2:AmountCurrencyIdentifier>EUR</ns2:AmountCurrencyIdentifier>
<ns1:ArticleIdIdentifier>13631</ns1:ArticleIdIdentifier>
<ns1:RecurringBilling>Y</ns1:RecurringBilling>
</ns1:InvoiceRow>
</ns1:Invoice>
</ns1:BatchInvoices>
</ns1:getBatchSellingBillsResponse>
</env:Body>
</env:Envelope>
3.2.2 GetBatchSellingBillIDs
3.2.2.1 Request
<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="urn:NBWS:batchsellingbill:v1.0" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<env:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>username</wsse:Username>
<wsse:Password>password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</env:Header>
<env:Body>
<ns1:getBatchSellingBillIDsRequest>
<ns1:BusinessId>1234567-8</ns1:BusinessId>
</ns1:getBatchSellingBillIDsRequest>
</env:Body>
</env:Envelope>
3.2.2.2 Response
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope"
xmlns:ns1="urn:NBWS:batchsellingbill:v1.0">
<env:Body>
<ns1:getBatchSellingBillIDsResponse>
<ns1:BatchBills>
<ns1:BatchBill>
<ns1:BatchBillId>28</ns1:BatchBillId>
<ns1:BillingDate>2021-08-12</ns1:BillingDate>
<ns1:SettlementDate></ns1:SettlementDate>
<ns1:Recipients>
<ns1:RecipientCustomerNumber>30</ns1:RecipientCustomerNumber>
<ns1:RecipientBusinessId>12345678-5</ns1:RecipientBusinessId>
<ns1:RecipientName>Mobiili oy ab</ns1:RecipientName>
<ns1:RecipientContactPerson>Matti Meikäläinen</ns1:RecipientContactPerson>
<ns1:RecipientAddress>Jokuosoite 1234</ns1:RecipientAddress>
<ns1:RecipientPostalNumber>13330</ns1:RecipientPostalNumber>
<ns1:RecipientCity>HARVIALA</ns1:RecipientCity>
</ns1:Recipients>
</ns1:BatchBill>
</ns1:BatchBills>
</ns1:getBatchSellingBillIDsResponse>
</env:Body>
</env:Envelope>
3.2.3 GetBatchSellingBillRows
3.2.3.1 Request
<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="urn:NBWS:batchsellingbill:v1.0" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<env:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>username</wsse:Username>
<wsse:Password>password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</env:Header>
<env:Body>
<ns1:getBatchSellingBillIRowsRequest>
<ns1:BatchBillId>1</ns1:BatchBillId>
</ns1:getBatchSellingBillIRowsRequest>
</env:Body>
</env:Envelope>
3.2.3.2 Response
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope"
xmlns:ns1="urn:NBWS:batchsellingbill:v1.0"
xmlns:ns2="urn:NBWS:invoice:v1.1">
<env:Body>
<ns1:getBatchSellingBillRowsResponse>
<ns1:BatchBills>
<ns1:BatchBill>
<ns1:BatchBillId>1</ns1:BatchBillId>
<ns1:InvoiceRow>
<ns2:RowIdentifier>372</ns2:RowIdentifier>
<ns2:ArticleIdentifier>Tuote 1</ns2:ArticleIdentifier>
<ns2:ArticleName></ns2:ArticleName>
<ns2:SerialNumberIdentifier></ns2:SerialNumberIdentifier>
<ns2:DeliveredQuantity>15.333</ns2:DeliveredQuantity>
<ns2:QuantityUnitCode>kpl</ns2:QuantityUnitCode>
<ns2:UnitPriceAmount>0</ns2:UnitPriceAmount>
<ns2:RowProjectReferenceIdentifier></ns2:RowProjectReferenceIdentifier>
<ns2:RowFreeText>Kuvaus</ns2:RowFreeText>
<ns2:RowNormalProposedAccountIdentifier>0</ns2:RowNormalProposedAccountIdentifier>
<ns2:RowAccountDimensionText>0</ns2:RowAccountDimensionText>
<ns2:RowDiscountPercent>0</ns2:RowDiscountPercent>
<ns2:RowVatRatePercent>0</ns2:RowVatRatePercent>
<ns2:RowVatCode>0</ns2:RowVatCode>
<ns2:RowVatAmount>0</ns2:RowVatAmount>
<ns2:RowVatExcludedAmount>0</ns2:RowVatExcludedAmount>
<ns2:RowAmount>0</ns2:RowAmount>
<ns2:AmountCurrencyIdentifier>EUR</ns2:AmountCurrencyIdentifier>
<ns1:ArticleIdIdentifier>0</ns1:ArticleIdIdentifier>
<ns1:RowIdentifier>372</ns1:RowIdentifier>
</ns1:InvoiceRow>
</ns1:BatchBill>
</ns1:BatchBills>
</ns1:getBatchSellingBillRowsResponse>
</env:Body>
</env:Envelope>
3.2.4 InsertBatchSellingBillRows
3.2.4.1 Request
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="urn:NBWS:batchsellingbill:v1.0"
xmlns:ns2="urn:NBWS:invoice:v1.1"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<env:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>username</wsse:Username>
<wsse:Password>password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</env:Header>
<env:Body>
<ns1:insertBatchSellingBillRowsRequest>
<ns1:DublicateRowHandling>1</ns1:DublicateRowHandling>
<ns1:BatchBill>
<ns1:BatchBillId>1</ns1:BatchBillId>
<ns1:BatchBillRow>
<ns2:ArticleIdentifier>Tuote 1</ns2:ArticleIdentifier>
<ns2:DeliveredQuantity>15.333</ns2:DeliveredQuantity>
<ns2:QuantityUnitCode>kpl</ns2:QuantityUnitCode>
<ns2:RowFreeText>Kuvaus</ns2:RowFreeText>
</ns1:BatchBillRow>
</ns1:BatchBill>
</ns1:insertBatchSellingBillRowsRequest>
</env:Body>
</env:Envelope>
3.2.4.2 Response
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope"
xmlns:ns1="urn:NBWS:batchsellingbill:v1.0">
<env:Body>
<ns1:insertBatchSellingBillRowsResponse>
<ns1:ReturnMessage>product_not_found_in_register:Tuote 1</ns1:ReturnMessage>
</ns1:insertBatchSellingBillRowsResponse>
</env:Body>
</env:Envelope>
3.2.5 UpdateBatchSellingBillRows
3.2.5.1 Request
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="urn:NBWS:batchsellingbill:v1.0"
xmlns:ns2="urn:NBWS:invoice:v1.1"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<env:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>username</wsse:Username>
<wsse:Password>password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</env:Header>
<env:Body>
<ns1:insertBatchSellingBillRowsRequest>
<ns1:DublicateRowHandling>1</ns1:DublicateRowHandling>
<ns1:BatchBill>
<ns1:BatchBillId>1</ns1:BatchBillId>
<ns1:BatchBillRow>
<ns2:RowIdentifier>123</ns2:RowIdentifier>
<ns2:ArticleIdentifier>Tuote 1</ns2:ArticleIdentifier>
<ns2:DeliveredQuantity>15.333</ns2:DeliveredQuantity>
<ns2:QuantityUnitCode>kpl</ns2:QuantityUnitCode>
<ns2:RowFreeText>Kuvaus</ns2:RowFreeText>
</ns1:BatchBillRow>
</ns1:BatchBill>
</ns1:insertBatchSellingBillRowsRequest>
</env:Body>
</env:Envelope>
3.2.5.2 Response
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope"
xmlns:ns1="urn:NBWS:batchsellingbill:v1.0">
<env:Body>
<ns1:updateBatchSellingBillRowsResponse>
<ns1:ReturnMessage>
<ns1:Message>OK</ns1:Message>
</ns1:ReturnMessage>
</ns1:gupdateBatchSellingBillRowsResponse>
</env:Body>
</env:Envelope>
3.2.6 RemoveBatchSellingBillRows
3.2.6.1 Request
<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="urn:NBWS:batchsellingbill:v1.0" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<env:Header>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>Testikanta Oy</wsse:Username>
<wsse:Password>1234</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</env:Header>
<env:Body>
<ns1:removeBatchSellingBillRowsRequest>
<ns1:BatchBillId>123</ns1:BatchBillId>
<ns1:RemoveAllRows>Y</ns1:RemoveAllRows>
<ns1:RemoveRows>1,2,3,4</ns1:RemoveRows>
</ns1:removeBatchSellingBillRowsRequest>
</env:Body>
</env:Envelope>
3.2.6.2 Response
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope"
xmlns:ns1="urn:NBWS:batchsellingbill:v1.0">
<env:Body>
<ns1:removeBatchSellingBillRowsResponse>
<ns1:ReturnMessage>
<ns1:Message>OK</ns1:Message>
</ns1:ReturnMessage>
</ns1:removeBatchSellingBillRowsResponse>
</env:Body>
</env:Envelope>