예제 #1
0
        /// <summary>
        /// Create an invoice example.
        /// </summary>
        static PoSCreateInvoiceResponseType CreateInvoice()
        {
            string ssn          = null;
            string orgNumber    = null;
            string emailAddress = null;

            orgNumber.ThrowIfNull("Organizational number must be set!");
            ssn.ThrowIfNull("Social security number must be set!");
            emailAddress.ThrowIfNull("E-mail address must be set!");
            var request = new PoSCreateInvoiceRequest()
            {
                Request = new PoSCreateInvoiceRequestType()
                {
                    IsInTestMode                   = true,
                    MakeInvoiceReservation         = 1,
                    ForceNoSsnCheck                = 0,
                    ForceNoOrganizationNumberCheck = 0,
                    Service            = PoSServiceType.InvoiceService,
                    PrintSetup         = PoSPrintSetupType.EPdfPrint,
                    SSN                = ssn,
                    OrganizationNumber = orgNumber,
                    EmailAddress       = emailAddress,
                    OrderNumber        = Guid.NewGuid().ToString(),
                    InvoiceDate        = DateTimeUtils.UnixTime(DateTime.UtcNow),
                    InvoiceDueDate     = DateTimeUtils.UnixTime(DateTime.UtcNow.AddDays(30)),
                    InvoiceRows        = new PoSInvoiceRowsType()
                    {
                        new PoSInvoiceRowType()
                        {
                            ArticleText        = "Biljett",
                            ArticleNumber      = "666",
                            Description        = "GOT - STO 2099-01-01",
                            Quantity           = 1,
                            Vat                = 0,
                            Price              = 100,
                            Unit               = "pcs",
                            BookkeepingAccount = 9999
                        }
                    }
                }
            };

            Console.WriteLine("XML request: ");
            Console.WriteLine(Serialize <PoSCreateInvoiceRequest>(request));
            return(Client.CreateInvoice(request).Response);
        }
 /// <summary>
 /// Creates an invoice.
 /// </summary>
 /// <param name="request"></param>
 public PoSCreateInvoiceResponse CreateInvoice(PoSCreateInvoiceRequest request)
 {
     return(SendRequest <PoSCreateInvoiceRequest, PoSCreateInvoiceResponse>(CreateInvoiceEndpointUrl, request));
 }