Invoice Payers |
Subscriptions can be paid by the customer with the subscription, or by someone else, an Invoice Payer. The following sections are descriptions of various elements related to invoice payers.
This topic contains the following sections:
Typically a Subscriber will receive and pay invoices for his or hers own subscription. However in some cases it is required for a subscription to be paid by someone else. This someone else will then become the Invoice Payer of the subscription.
The need for an Invoice Payer arise in various scenarios, most often it is required when a company or organisation has to pay for a subscription where the actual subscription is owned by the member or employee. Similarly an Invoice Payer is needed when a person wishes to buy a subscription for another person (friend/family member etc) as a gift.
The following sections describe methods and processes related to Invoice Payers.
Note |
---|
Invoice Payer and Bill Payer is used interchangeably in the text, application features and service method names. They have the same meaning regardless. |
When ordering a new subscription it is possible to associate it with an Invoice Payer immediately. The method OrderSubscription will take a customer and an address as input for the payment details (PaymentExchange). The Customer can either be an existing customer, in which case you must specify the CustomerNumber. Alternatively it can be a new customer entry, in which case you should specify all the customer and address information as you would when creating the primary customer.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://tech.infosoft.no/schemas/2011/10" xmlns:ns1="http://tech.infosoft.no/schemas/2012/08" xmlns:arr="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:inf="http://schemas.datacontract.org/2004/07/Infosoft.Webservices.DTO"> <soapenv:Header/> <soapenv:Body> <ns:OrderSubscriptionRequest> <!-- Normal subscription parameters omitted --> <ns:PaymentParameters> <ns:InvoicePayer> <ns:InvoicePayer> <ns:EmailAddress>janedoe@payingasubscriptionforsomeoneelse.com</ns:EmailAddress> <ns:Firstname>Jane</ns:Firstname> <ns:Lastname>Doe</ns:Lastname> </ns:InvoicePayer> <ns:InvoiceAddress> <ns:CountryCode>NO</ns:CountryCode> <ns:HouseNumber>42</ns:HouseNumber> <ns:Streetname>InvoicePayerRoad</ns:Streetname> <ns:ZipCode>1234</ns:ZipCode> </ns:InvoiceAddress> </ns:InvoicePayer> </ns:PaymentParameters> </ns:OrderSubscriptionRequest> </soapenv:Body> </soapenv:Envelope>
The above example will create a new invoice payer named Jane Doe, and sets her as the Invoice Payer of the new subscription.
Important |
---|
When using the automatic import routine, the Invoice Payer is subject to the same control routines as an ordinary customer. So if there are duplicates the order will be placed for manual handling. |
Depending on the circumstances it is sometimes valuable to show some information about who is paying for a given Subscription. In order to do that you need to figure out if the Subscription has an Invoice Payer. This can be achieved by using the GetBillPayer method which will return the CustomerNumber for the Invoice Payer, as well as the invoice payers address.
<GetBillPayerResult> <StatusCode>00</StatusCode> <CustomerNumber>42</CustomerNumber> <TitleCode>TEST</TitleCode> <Name>DOE JOHN</Name> <FirstName>JOHN</FirstName> <LastName>DOE</LastName> <BillPayerCustomerNumber>50</BillPayerCustomerNumber> <StartDate>0001-01-01T00:00:00</StartDate> <InfoWebAddress> <CustomerNumber>50</CustomerNumber> <StatusCode>00</StatusCode> <StreetName>InvoicePayerRoad</StreetName> <HouseNumber>42</HouseNumber> <!-- Rest of address omitted for brevity --> </InfoWebAddress> </GetBillPayerResult> <comment xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5"></comment>
In order to retrieve all the details of the Invoice Payer you have to get the details for the creturned BillPayerCustomerNumber.
Creating Invoice Payers on existing Subscriptions is typically used for employee subscriptions where the employee already have a subscription from previously. Adding an Invoice Payer can be done using the SaveBillPayer method. The input is similar to the one given when registering a new subscription i.e. the details of the person to pay the invoice.
<inf:SaveBillPayer> <inf:customerNumber>42</inf:customerNumber> <inf:titleCode>TEST</inf:titleCode> <inf:bill> <inf:TitleCode>TEST</inf:TitleCode> <inf:ErrorMessage></inf:ErrorMessage> <inf:Name></inf:Name> <inf:FirstName></inf:FirstName> <inf:LastName>DOE JANE</inf:LastName> <inf:Email>janedoe@payingasubscriptionforsomeoneelse.com</inf:Email> <!-- Can be omitted if the Invoice Payer does not exist --> <inf:BillPayerCustomerNumber>50</inf:BillPayerCustomerNumber> <inf:StartDate>2015-10-1</inf:StartDate> <InfoWebAddress> <StreetName>InvoicePayerRoad</StreetName> <HouseNumber>42</HouseNumber> <!-- Rest of address omitted for brevity --> </InfoWebAddress> </inf:bill> </inf:SaveBillPayer>
Changing Invoice Payers on existing Subscriptions are currently always placed for manual handling by customer services.
Some companies might have a lot of employees that they pay invoices for, while it is fine for the company to be assigned as an Invoice Payer to each subscription, this also means that they will get one invoice per subscriber, instead of just one joint invoice for all subscriptions.
Unlike a regular Invoice Payer, a Joint Invoice Payer needs an agreement and must be configured ahead of time by customer services (or similar), it is not possible to create a Joint Invoice Payer agreement from the web services at the time of writing. Once an agreement is created, an identifier is created, sort of like the customernumber, this number can be used when ordering a new subscription in the Joint Invoice Identifier Field of the payment parameters.
Note |
---|
There is currently no way to add/remove a Joint Invoice Payer on an existing subscription via the webservices. |