ProcessCustomer
This function is obsolete. We recommended that you do not use this function. Instead, when sending an order to the system using ProcessOrder, simplify specify the customer's address directly in the call to ProcessOrder. Ongoing WMS will manage the rest.
This function is used to create or update a customer.
Request XML
POST /xxx/Service.asmx HTTP/1.1
Host: api.ongoingsystems.se
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://ongoingsystems.se/WSI/ProcessCustomer"
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ProcessCustomer xmlns="http://ongoingsystems.se/WSI">
<GoodsOwnerCode>string</GoodsOwnerCode>
<UserName>string</UserName>
<Password>string</Password>
<Customer>
<CustomerOperation>Create or CreateOrUpdate or CreateNotUpdate or Find</CustomerOperation>
<CustomerIdentification>ExternalCustomerCode or SystemId or CustomerNumber or FullNameAndAddress</CustomerIdentification>
<ExternalCustomerCode>string</ExternalCustomerCode>
<CustomerNumber>string</CustomerNumber>
<CustomerId>int</CustomerId>
<DeliveryAddressId>int</DeliveryAddressId>
<InvoiceAddressId>int</InvoiceAddressId>
<Coordinates>
<Longitude>decimal</Longitude>
<Latitude>decimal</Latitude>
</Coordinates>
<Name>string</Name>
<Address>string</Address>
<Address2>string</Address2>
<Address3>string</Address3>
<PostCode>string</PostCode>
<City>string</City>
<TelePhone>string</TelePhone>
<Remark>string</Remark>
<Email>string</Email>
<MobilePhone>string</MobilePhone>
<CountryCode>string</CountryCode>
<CountryStateCode>string</CountryStateCode>
<DeliveryInstruction>string</DeliveryInstruction>
<IsVisible>boolean</IsVisible>
<NotifyBySMS>boolean</NotifyBySMS>
<NotifyByEmail>boolean</NotifyByEmail>
<NotifyByTelephone>boolean</NotifyByTelephone>
<InvoiceAddress>
<Coordinates>
<Longitude>decimal</Longitude>
<Latitude>decimal</Latitude>
</Coordinates>
<Name>string</Name>
<Address>string</Address>
<Address2>string</Address2>
<Address3>string</Address3>
<PostCode>string</PostCode>
<City>string</City>
<TelePhone>string</TelePhone>
<Remark>string</Remark>
<Email>string</Email>
<MobilePhone>string</MobilePhone>
<CountryStateCode>string</CountryStateCode>
<CountryCode>string</CountryCode>
<DeliveryInstruction>string</DeliveryInstruction>
<IsVisible>boolean</IsVisible>
<NotifyBySMS>boolean</NotifyBySMS>
<NotifyByEmail>boolean</NotifyByEmail>
<NotifyByTelephone>boolean</NotifyByTelephone>
<AddressClasses>
<Operation>FindOrCreate or Find</Operation>
<Identification>Code</Identification>
<AssignAddressClassMode>NoAssign or Add or Set</AssignAddressClassMode>
<Classes>
<Class>
<Name>string</Name>
<Code>string</Code>
<Comment>string</Comment>
</Class>
<Class>
<Name>string</Name>
<Code>string</Code>
<Comment>string</Comment>
</Class>
</Classes>
</AddressClasses>
</InvoiceAddress>
<CustomerGroup>
<CustomerGroupOperation>Find or CreateOrFind</CustomerGroupOperation>
<CustomerGroupIdentification>CustomerGroupCode or CustomerGroupName</CustomerGroupIdentification>
<CustomerGroupCode>string</CustomerGroupCode>
<CustomerGroupName>string</CustomerGroupName>
</CustomerGroup>
<OrganisationNumber>string</OrganisationNumber>
<VATNumber>string</VATNumber>
<DoorCode>string</DoorCode>
<AddressFreeText1>string</AddressFreeText1>
<AddressFreeText2>string</AddressFreeText2>
<AddressClasses>
<Operation>FindOrCreate or Find</Operation>
<Identification>Code</Identification>
<AssignAddressClassMode>NoAssign or Add or Set</AssignAddressClassMode>
<Classes>
<Class>
<Name>string</Name>
<Code>string</Code>
<Comment>string</Comment>
</Class>
<Class>
<Name>string</Name>
<Code>string</Code>
<Comment>string</Comment>
</Class>
</Classes>
</AddressClasses>
</Customer>
</ProcessCustomer>
</soap:Body>
</soap:Envelope>
Request specification
ProcessCustomer | |||
---|---|---|---|
GoodsOwnerCode | string(400) | Req. | The name/code of your client |
UserName | string(50) | Req. | Your username |
Password | string(50) | Req. | Your password |
Customer | Customer | Req. | The customer object |
Customer | |||
---|---|---|---|
CustomerOperation | enum | Req. | Defines the operation: - Create - CreateOrUpdate - CreateNotUpdate - Find |
CustomerIdentification | enum | Req. | Defines what you want to identify the customer by. We recommend that you use FullNameAndAddress or CustomerNumber. - ExternalCustomerCode - SystemId - CustomerNumber - FullNameAndAddress |
ExternalCustomerCode | string(50) | External customer code. Required if CustomerIdentification = ExternalCustomerCode | |
CustomerNumber | string(50) | Customer number. Required if CustomerIdentification = CustomerNumber | |
CustomerId | int | Ongoing WMS internal id (SystemId). Required if CustomerIdentification = SystemId | |
DeliveryAddressId | int | Only usable when the Customer tag is used within the ProcessOrder request and CustomerOperation = Find. Binds the delivery address of the order directly to the Ongoing WMS system id of the address | |
InvoiceAddressId | int | Only usable when the Customer tag is used within the ProcessOrder request and CustomerOperation = Find. Binds the invoice address of the order to the Ongoing WMS system id of the address | |
Coordinates | Coordinates | Coordinates of customer | |
Name | string(200) | Name | |
Address | string(200) | Address line 1 | |
Address2 | string(200) | Address line 2 | |
Address3 | string(200) | Address line 3 | |
PostCode | string(50) | Post code/zip | |
City | string(200) | City | |
TelePhone | string(50) | Telephone number (non cellular) | |
Remark | string(800) | Remark/comment | |
string(300) | Email address | ||
MobilePhone | string(50) | Mobile phone number (cellular) | |
CountryCode | string(2) | The two-letter ISO 3166-1 alpha-2 code of the country. | |
CountryStateCode | string(50) | The two-letter ISO 3166-2 abbreviation of the state. Required for United States and Canada. See ISO 3166-2:US for United States and ISO 3166-2:CA for Canada. | |
DeliveryInstruction | string(300) | Delivery instruction | |
IsVisible | boolean | False if the address shouldn't show in the system, e.g. be re-used for manual order | |
NotifyBySMS | boolean | True if the customer should be notified by the transporter through SMS | |
NotifyByEmail | boolean | True if the customer should be notified by the transporter through email | |
NotifyByTelephone | boolean | True if the customer should be notified by the transporter through phone call | |
InvoiceAddress | InvoiceAddress | Address object defining invoice address for the customer. Fields from Coordinates to NotifyByTelephone from the Customer object apply | |
CustomerGroup | CustomerGroup | Customer group, enable grouping of customers | |
OrganisationNumber | string(20) | Organisation number | |
VATNumber | string(20) | VAT number | |
DoorCode | string(30) | Door code, may be sent to transporter for use during delivery | |
AddressFreeText1 | string(400) | A free text field for the address | |
AddressFreeText2 | string(100) | A free text field for the address | |
AddressClasses | AddressClasses | An object of type AddressClasses, which specifies which classes the delivery address on this order belongs to. |
Coordinates | |||
---|---|---|---|
Longitude | decimal | Req. | Longitude |
Latitude | decimal | Req. | Latitude |
InvoiceAddress | |||
---|---|---|---|
Coordinates | Coordinates | Coordinates of the invoice address | |
Name | string(200) | Name | |
Address | string(200) | Address line 1 | |
Address2 | string(200) | Address line 2 | |
Address3 | string(200) | Address line 3 | |
PostCode | string(50) | Post code/zip | |
City | string(200) | City | |
TelePhone | string(50) | Telephone number (non cellular) | |
Remark | string(800) | Remark/comment | |
string(300) | Email address | ||
MobilePhone | string(50) | Mobile phone number (cellular) | |
CountryStateCode | string(50) | The two-letter ISO 3166-2 abbreviation of the state. Mainly used for United States and Canada. See ISO 3166-2:US for United States and ISO 3166-2:CA for Canada. | |
CountryCode | string(2) | The two-letter ISO 3166-1 alpha-2 code of the country. | |
DeliveryInstruction | string(300) | Delivery instruction | |
IsVisible | boolean | False if the address shouldn't show in the system, e.g. be re-used for manual order | |
NotifyBySMS | boolean | True if the customer should be notified by the transporter through SMS | |
NotifyByEmail | boolean | True if the customer should be notified by the transporter through email | |
NotifyByTelephone | boolean | True if the customer should be notified by the transporter through phone call | |
AddressClasses | AddressClasses | An object of type AddressClasses, which specifies which classes the invoice address on this order belongs to. |
CustomerGroup | |||
---|---|---|---|
CustomerGroupOperation | enum | Req. | Defines the operation - Find |
CustomerGroupIdentification | enum | Req. | Defines what you want to identify the customer group by - CustomerGroupCode - CustomerGroupName |
CustomerGroupCode | string | ||
CustomerGroupName | string | Customer group name. Required if CustomerGroupIdentification = CustomerGroupName |
AddressClasses | |||
---|---|---|---|
Operation | enum | Req. | Defines the operation for each class: - Find - FindOrCreate Most integrations will use FindOrCreate |
Identification | enum | Req. | Defines what you want to identify each class. Currently there is only one type of valid identification: - Code - identifies the class using the code |
AssignAddressClassMode | enum | An element of type AssignAddressClassMode. | |
Classes | AddressClassClass[] | Req. | A list of Class objects, each object representing one address class. |
AddressClassClass | |||
---|---|---|---|
Name | string(200) | The name of the class. | |
Code | string(200) | The code of the class. | |
Comment | string(500) | Comment. |
Response XML
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ProcessCustomerResponse xmlns="http://ongoingsystems.se/WSI">
<ProcessCustomerResult>
<ErrorMessage>string</ErrorMessage>
<GoodsOwnerOrderNumber>string</GoodsOwnerOrderNumber>
<OrderId>int</OrderId>
<InOrderId>int</InOrderId>
<ArticleDefId>int</ArticleDefId>
<Success>boolean</Success>
<Message>string</Message>
<ShipmentId>int</ShipmentId>
</ProcessCustomerResult>
</ProcessCustomerResponse>
</soap:Body>
</soap:Envelope>
Response specification
ProcessCustomerResponse | ||
---|---|---|
ProcessCustomerResult | FileResultClass |
FileResultClass | ||
---|---|---|
ErrorMessage | string | Error message |
GoodsOwnerOrderNumber | string(50) | |
OrderId | int | |
InOrderId | int | |
ArticleDefId | int | |
Success | boolean | True if success |
Message | string | Process message |
ShipmentId | int |