Hmx Accounts

<back to all web services

CreatePurchaseOrder

The following routes are available for this service:
POST/api/purchaseordersCreate a new PurchaseOrder
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Hmx.Accounts.ServiceModels
Imports Hmx.Accounts.Models

Namespace Global

    Namespace Hmx.Accounts.Models

        Public Partial Class PurchaseOrderItem
            Public Overridable Property Id As Integer
            <References(GetType(PurchaseOrder))>
            Public Overridable Property PurchaseOrderId As Integer

            <References(GetType(Product))>
            Public Overridable Property ProductId As String

            Public Overridable Property ProductName As String
            Public Overridable Property Quantity As Integer
            Public Overridable Property Price As Decimal
            Public Overridable Property DiscountDescription As String
            Public Overridable Property DiscountSource As String
            Public Overridable Property Discount As Decimal
            Public Overridable Property CreatedDate As Date
        End Class
    End Namespace

    Namespace Hmx.Accounts.ServiceModels

        Public Partial Class BillingInformationDto
            Public Overridable Property CardNumber As String
            Public Overridable Property CardType As String
            Public Overridable Property ExpireMonth As Integer
            Public Overridable Property ExpireYear As Integer
            Public Overridable Property Cvv2 As String
            Public Overridable Property FirstName As String
            Public Overridable Property LastName As String
            Public Overridable Property City As String
            Public Overridable Property CountryCode As String
            Public Overridable Property Line1 As String
            Public Overridable Property PostalCode As String
            Public Overridable Property State As String
        End Class

        Public Partial Class CreatePurchaseOrder
            Public Sub New()
                OrderItems = New List(Of PurchaseOrderItemDto)
            End Sub

            Public Overridable Property UserId As String
            Public Overridable Property UserEmail As String
            Public Overridable Property CreatedDate As Date
            Public Overridable Property Void As Boolean
            Public Overridable Property CouponCode As String
            Public Overridable Property OrderItems As List(Of PurchaseOrderItemDto)
            Public Overridable Property PaymentType As String
            Public Overridable Property BillingInformationDto As BillingInformationDto
        End Class

        Public Partial Class CreatePurchaseOrderResponse
            Public Sub New()
                Details = New List(Of Details)
            End Sub

            Public Overridable Property Message As String
            Public Overridable Property Status As HttpStatusCode
            Public Overridable Property PurchaseOrder As PurchaseOrderDto
            Public Overridable Property Details As List(Of Details)
        End Class

        Public Partial Class Details
            Public Overridable Property Code As String
            Public Overridable Property Field As String
            Public Overridable Property Issue As String
        End Class

        Public Partial Class PurchaseOrderDto
            Public Sub New()
                OrderItems = New List(Of PurchaseOrderItem)
            End Sub

            Public Overridable Property Id As Integer
            Public Overridable Property UserId As String
            Public Overridable Property CreatedDate As Date
            Public Overridable Property PaymentType As String
            Public Overridable Property Void As Boolean
            Public Overridable Property Paid As Boolean
            Public Overridable Property TransactionIdentifier As String
            Public Overridable Property CouponCode As String
            Public Overridable Property OrderItems As List(Of PurchaseOrderItem)
            Public Overridable Property Payer As String
            Public Overridable Property BillingAddressLine1 As String
            Public Overridable Property BillingAddressCity As String
            Public Overridable Property BillingAddressState As String
            Public Overridable Property BillingAddressPostalCode As String
            Public Overridable Property BillingAddressCountryCode As String
        End Class

        Public Partial Class PurchaseOrderItemDto
            Public Overridable Property Id As Integer
            Public Overridable Property PurchaseOrderId As Integer
            Public Overridable Property ProductId As String
            Public Overridable Property ProductName As String
            Public Overridable Property Quantity As Integer
            Public Overridable Property Price As Decimal
            Public Overridable Property DiscountDescription As String
            Public Overridable Property DiscountSource As String
            Public Overridable Property Discount As Decimal
            Public Overridable Property CreatedDate As Date
        End Class
    End Namespace
End Namespace

VB.NET CreatePurchaseOrder DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/purchaseorders HTTP/1.1 
Host: accounts.dev.healthmonix.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CreatePurchaseOrder xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Hmx.Accounts.ServiceModels">
  <BillingInformationDto>
    <CardNumber>String</CardNumber>
    <CardType>String</CardType>
    <City>String</City>
    <CountryCode>String</CountryCode>
    <Cvv2>String</Cvv2>
    <ExpireMonth>0</ExpireMonth>
    <ExpireYear>0</ExpireYear>
    <FirstName>String</FirstName>
    <LastName>String</LastName>
    <Line1>String</Line1>
    <PostalCode>String</PostalCode>
    <State>String</State>
  </BillingInformationDto>
  <CouponCode>String</CouponCode>
  <CreatedDate>0001-01-01T00:00:00</CreatedDate>
  <OrderItems>
    <PurchaseOrderItemDto>
      <CreatedDate>0001-01-01T00:00:00</CreatedDate>
      <Discount>0</Discount>
      <DiscountDescription>String</DiscountDescription>
      <DiscountSource>String</DiscountSource>
      <Id>0</Id>
      <Price>0</Price>
      <ProductId>String</ProductId>
      <ProductName>String</ProductName>
      <PurchaseOrderId>0</PurchaseOrderId>
      <Quantity>0</Quantity>
    </PurchaseOrderItemDto>
  </OrderItems>
  <PaymentType>String</PaymentType>
  <UserEmail>String</UserEmail>
  <UserId>String</UserId>
  <Void>false</Void>
</CreatePurchaseOrder>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<CreatePurchaseOrderResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Hmx.Accounts.ServiceModels">
  <Details>
    <Details>
      <Code>String</Code>
      <Field>String</Field>
      <Issue>String</Issue>
    </Details>
  </Details>
  <Message>String</Message>
  <PurchaseOrder>
    <BillingAddressCity>String</BillingAddressCity>
    <BillingAddressCountryCode>String</BillingAddressCountryCode>
    <BillingAddressLine1>String</BillingAddressLine1>
    <BillingAddressPostalCode>String</BillingAddressPostalCode>
    <BillingAddressState>String</BillingAddressState>
    <CouponCode>String</CouponCode>
    <CreatedDate>0001-01-01T00:00:00</CreatedDate>
    <Id>0</Id>
    <OrderItems xmlns:d3p1="http://schemas.datacontract.org/2004/07/Hmx.Accounts.Models">
      <d3p1:PurchaseOrderItem>
        <d3p1:CreatedDate>0001-01-01T00:00:00</d3p1:CreatedDate>
        <d3p1:Discount>0</d3p1:Discount>
        <d3p1:DiscountDescription>String</d3p1:DiscountDescription>
        <d3p1:DiscountSource>String</d3p1:DiscountSource>
        <d3p1:Id>0</d3p1:Id>
        <d3p1:Price>0</d3p1:Price>
        <d3p1:ProductId>String</d3p1:ProductId>
        <d3p1:ProductName>String</d3p1:ProductName>
        <d3p1:PurchaseOrderId>0</d3p1:PurchaseOrderId>
        <d3p1:Quantity>0</d3p1:Quantity>
      </d3p1:PurchaseOrderItem>
    </OrderItems>
    <Paid>false</Paid>
    <Payer>String</Payer>
    <PaymentType>String</PaymentType>
    <TransactionIdentifier>String</TransactionIdentifier>
    <UserId>String</UserId>
    <Void>false</Void>
  </PurchaseOrder>
  <Status>Continue</Status>
</CreatePurchaseOrderResponse>