Skip to content

Documentation ShoppingService (1.1)

Entities and methods to handle baskets and payments.

Download OpenAPI description
Languages
Servers

https://demo.storm.io/api/1.1/

Operations
Operations

Request

PurchaseEx works as Purchase with the additional parameter paymentParameters. This method should be used when overriding the configured values for selected payment methods. See Payments for more information about the checkout process.

Query
basketIdinteger(int32)required

The internal id of the current basket.

ipAddressstringrequired

The user's ipAddress.

userAgentstringrequired

The user agent of the user's browser.

pricelistSeedstring

A comma separated list of internal pricelist ids to use, if any. PriceLists supplied must be valid, either from the application's public priceList or any customer or company priceLists or any valid client priceLists. For clients configured to use priceListSeed exclusively in the API only the supplied priceLists will be used. If this is not configured, the supplied priceLists will be appended to the valid priceLists. If none is supplied, the default value for the application will be used in combination with any customer or company priceLists. This applies to both configurations.

cultureCodestring

Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

Bodyrequired

General: 'test'=true to enable tests. When 'test' is used no payments will be processed for real. Payments may interpret supplied values such as cardNumber or ssn to simulate failures. Not implemented. Klarna: 'sessionId'=id. Used to provide a sessionId to Klarna payments. Not implemented. Payex and Dibs. Supported values are 'returnUrl' and 'cancelUrl'. Values should point to where the payment service should go in case of success/failure.

Array [
Namestring

The Name of the Entity. MaxLength: 50.

Valuestring

The Value of the Entity. MaxLength: max.

]
curl -i -X POST \
  'https://demo.storm.io/api/1.1/ShoppingService.svc/rest/PurchaseEx?basketId=0&ipAddress=string&userAgent=string' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "Name": "string",
      "Value": "string"
    }
  ]'

Responses

Success

Body
Statusstring

String response. OK if successful, otherwise may have different values depending on PSP. MaxLength: 50.

StatusDescriptionstring

Descriptive text for the status. MaxLength: 255.

BasketIdinteger or null(int32)

Internal id of the associated basket.

OrderNostring

Order number if order's been created. MaxLength: 50.

PaymentCodestring

Internal identifier of this specific payment attempt. MaxLength: int.

PaymentReferencestring

External identifier of this specific payment attempt, usually from the PSP. MaxLength: 50.

HostedPaymentPagestring

Used when a payment should be finalized on a different platform, e.g. sending a link by SMS to customer. MaxLength: 50.

RedirectUrlstring

Configurated redirection URL after successful payment. MaxLength: 255.

RedirectParametersArray of objects(NameValue)(NameValue)

PSP specific data returned for the payment. See PSP documentation.

IsSyncronousboolean or null

Indicates if the payment attempt was synchronous or not.

PaymentServiceIdinteger or null(int32)

Internal id of the payment service used.

Response
{ "Status": "string", "StatusDescription": "string", "BasketId": 0, "OrderNo": "string", "PaymentCode": "string", "PaymentReference": "string", "HostedPaymentPage": "string", "RedirectUrl": "string", "RedirectParameters": [ {} ], "IsSyncronous": true, "PaymentServiceId": 0 }

Request

PurchaseEx2 works as Purchase with the additional parameter paymentParameters. This method should be used when overriding the configured values for selected payment methods. See Payments for more information about the checkout process.

Query
ipAddressstringrequired

The user's ipAddress.

userAgentstringrequired

The user agent of the user's browser.

pricelistSeedstring

A comma separated list of internal pricelist ids to use, if any. PriceLists supplied must be valid, either from the application's public priceList or any customer or company priceLists or any valid client priceLists. For clients configured to use priceListSeed exclusively in the API only the supplied priceLists will be used. If this is not configured, the supplied priceLists will be appended to the valid priceLists. If none is supplied, the default value for the application will be used in combination with any customer or company priceLists. This applies to both configurations.

cultureCodestring

Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

Bodyrequired

Extended data object to the PSP for this purchase.

Checkoutobject(Checkout)(Checkout)
PaymentParametersArray of objects(NameValue)(NameValue)

General: 'test'=true to enable tests. When 'test' is used no payments will be processed for real. Payments may interpret supplied values such as cardNumber or ssn to simulate failures. Not implemented. Klarna: 'sessionId'=id. Used to provide a sessionId to Klarna payments. Not implemented. Payex and Dibs. Supported values are 'returnUrl' and 'cancelUrl'. Values should point to where the payment service should go in case of success/failure.

curl -i -X POST \
  'https://demo.storm.io/api/1.1/ShoppingService.svc/rest/PurchaseEx2?ipAddress=string&userAgent=string' \
  -H 'Content-Type: application/json' \
  -d '{
    "Checkout": {
      "Basket": {
        "Id": 0,
        "CustomerId": 0,
        "CompanyId": 0,
        "SalesContactId": 0,
        "StatusId": 0,
        "CurrencyId": 0,
        "CurrencyCode": "string",
        "Comment": "string",
        "OrderReference": "string",
        "DiscountCode": "string",
        "ReferId": 0,
        "ReferUrl": "string",
        "ValidTo": "2019-08-24T14:15:22Z",
        "IsEditable": true,
        "Items": [
          {
            "Id": 0,
            "LineNo": 0,
            "ParentLineNo": 0,
            "ProductId": 0,
            "PartNo": "string",
            "ManufacturerPartNo": "string",
            "Name": "string",
            "SubHeader": "string",
            "ThumbnailImage": "string",
            "FlagIdSeed": "string",
            "Type": 0,
            "PriceDisplay": 0,
            "Price": 0,
            "PriceOriginal": 0,
            "Cost": 0,
            "VatRate": 0,
            "Quantity": 0,
            "UOM": "string",
            "UOMCount": 0,
            "Comment": "string",
            "PriceListId": 0,
            "ReferId": 0,
            "ReferUrl": "string",
            "IsEditable": true,
            "IsDiscountable": true,
            "Info": [
              {
                "TypeId": 0,
                "Value": "string",
                "Code": "string"
              }
            ],
            "OptionalItems": [
              {}
            ],
            "OnHandValue": 0,
            "IncomingValue": 0,
            "NextDeliveryDate": "2019-08-24T14:15:22Z",
            "LeadtimeDayCount": 0,
            "PromotionIdSeed": "string",
            "ImageKey": "string",
            "ManufacturerName": "string",
            "CategoryId": 0,
            "OnHand": {
              "Value": 0,
              "IncomingValue": 0,
              "NextDeliveryDate": "2019-08-24T14:15:22Z",
              "LeadtimeDayCount": 0,
              "LastChecked": "2019-08-24T14:15:22Z",
              "IsActive": true,
              "IsReturnable": true,
              "Info": [
                {}
              ]
            },
            "OnHandSupplier": {
              "Value": 0,
              "IncomingValue": 0,
              "NextDeliveryDate": "2019-08-24T14:15:22Z",
              "LeadtimeDayCount": 0,
              "LastChecked": "2019-08-24T14:15:22Z",
              "IsActive": true,
              "IsReturnable": true,
              "Info": [
                {}
              ]
            },
            "PriceRecommended": 0,
            "ManufacturerId": 0,
            "UniqueName": "string",
            "StatusId": 0,
            "StockDisplayBreakPoint": 0,
            "PriceCatalog": 0,
            "IsBuyable": true,
            "SubDescription": "string",
            "CategoryIdSeed": "string",
            "RecommendedQuantity": 0,
            "IsRecommendedQuantityFixed": true,
            "AppliedPromotions": [
              {
                "Id": 0,
                "Name": "string",
                "DiscountCode": "string",
                "AppliedAmount": 0,
                "AppliedAmountIncVat": 0
              }
            ],
            "RequirementPromotionIdSeed": "string",
            "IsSubscribable": true,
            "DescriptionHeader": "string",
            "IsPriceManual": true,
            "PriceStandard": 0,
            "EanCode": "string",
            "CostUnit": 0,
            "PriceDisplayIncVat": 0,
            "PriceListLocked": true,
            "PriceOriginalIncVat": 0,
            "PriceRecommendedIncVat": 0,
            "PriceCatalogIncVat": 0,
            "PriceStandardIncVat": 0
          }
        ],
        "Info": [
          {
            "TypeId": 0,
            "Value": "string",
            "Code": "string"
          }
        ],
        "Summary": {
          "Items": {
            "Amount": 0,
            "Vat": 0,
            "AmountIncVat": 0
          },
          "Freigt": {
            "Amount": 0,
            "Vat": 0,
            "AmountIncVat": 0
          },
          "Fees": {
            "Amount": 0,
            "Vat": 0,
            "AmountIncVat": 0
          },
          "Total": {
            "Amount": 0,
            "Vat": 0,
            "AmountIncVat": 0
          }
        },
        "AppliedPromotions": [
          {
            "Id": 0,
            "Name": "string",
            "Header": "string",
            "ShortDescription": "string",
            "Description1": "string",
            "Description2": "string",
            "StartDate": "2019-08-24T14:15:22Z",
            "EndDate": "2019-08-24T14:15:22Z",
            "ImageKey": "string",
            "RequirementSeed": "string",
            "DiscountCode": "string",
            "IsExcludedFromPriceCalculation": true,
            "AllowProductListing": true,
            "Images": [
              {
                "Id": 0,
                "Type": 0,
                "Name": "string",
                "Description": "string",
                "Key": "string"
              }
            ],
            "ProductFilters": [
              {
                "ManufacturerId": 0,
                "CategorySeed": "string",
                "TypeId": 0,
                "ProductId": 0,
                "VariantProductId": 0,
                "PartNo": "string",
                "PricelistId": 0,
                "FlagId": 0
              }
            ],
            "AppliedAmount": 0,
            "EffectSeed": "string",
            "FreightDiscountPct": 0,
            "IsStackable": true,
            "AppliedAmountIncVat": 0,
            "ExclusivityType": 0
          }
        ],
        "IpAddress": "string",
        "AttestedBy": 0,
        "TypeId": 0,
        "DoHold": true,
        "IsBuyable": true,
        "InvoiceReference": "string",
        "PaymentMethodId": 0,
        "DeliveryMethodId": 0,
        "SalesAreaId": 0
      },
      "Buyer": {
        "Id": 0,
        "Key": "string",
        "Code": "string",
        "Email": "string",
        "SSN": "string",
        "FirstName": "string",
        "LastName": "string",
        "Phone": "string",
        "CellPhone": "string",
        "ReferId": 0,
        "ReferUrl": "string",
        "Account": {
          "Id": 0,
          "Key": "string",
          "LoginName": "string",
          "Name": "string",
          "Roles": [
            0
          ],
          "Authorizations": [
            {
              "Id": 0,
              "Value": "string",
              "Code": "string"
            }
          ],
          "IsActive": true
        },
        "Companies": [
          {
            "Id": 0,
            "Key": "string",
            "Code": "string",
            "Name": "string",
            "OrgNo": "string",
            "Phone": "string",
            "ReferId": 0,
            "ReferUrl": "string",
            "DeliveryAddresses": [
              {
                "Id": 0,
                "CareOf": "string",
                "Line1": "string",
                "Line2": "string",
                "Zip": "string",
                "City": "string",
                "CountryId": 0,
                "Country": "string",
                "Region": "string",
                "IsValidated": true,
                "GlobalLocationNo": "string",
                "ShippingPhoneNumber": "string"
              }
            ],
            "InvoiceAddress": {
              "Id": 0,
              "CareOf": "string",
              "Line1": "string",
              "Line2": "string",
              "Zip": "string",
              "City": "string",
              "CountryId": 0,
              "Country": "string",
              "Region": "string",
              "IsValidated": true,
              "GlobalLocationNo": "string",
              "ShippingPhoneNumber": "string"
            },
            "UseInvoiceAddressAsDeliveryAddress": true,
            "Info": [
              {
                "Id": 0,
                "Value": "string",
                "Code": "string"
              }
            ],
            "PricelistIds": [
              0
            ],
            "ParentId": 0,
            "DeliveryMethodIds": [
              0
            ],
            "PaymentMethodIds": [
              0
            ],
            "Email": "string",
            "Flags": [
              {
                "Id": 0,
                "Name": "string",
                "Group": 0,
                "IsSelected": true
              }
            ],
            "VatNo": "string"
          }
        ],
        "DeliveryAddresses": [
          {
            "Id": 0,
            "CareOf": "string",
            "Line1": "string",
            "Line2": "string",
            "Zip": "string",
            "City": "string",
            "CountryId": 0,
            "Country": "string",
            "Region": "string",
            "IsValidated": true,
            "GlobalLocationNo": "string",
            "ShippingPhoneNumber": "string"
          }
        ],
        "InvoiceAddress": {
          "Id": 0,
          "CareOf": "string",
          "Line1": "string",
          "Line2": "string",
          "Zip": "string",
          "City": "string",
          "CountryId": 0,
          "Country": "string",
          "Region": "string",
          "IsValidated": true,
          "GlobalLocationNo": "string",
          "ShippingPhoneNumber": "string"
        },
        "Flags": [
          {
            "Id": 0,
            "Name": "string",
            "Group": 0,
            "IsSelected": true
          }
        ],
        "UseInvoiceAddressAsDeliveryAddress": true,
        "Info": [
          {
            "Id": 0,
            "Value": "string",
            "Code": "string"
          }
        ],
        "PricelistIds": [
          0
        ],
        "CrmId": "string",
        "IsActive": true,
        "Created": "2019-08-24T14:15:22Z",
        "Updated": "2019-08-24T14:15:22Z"
      },
      "Payer": {
        "Id": 0,
        "Key": "string",
        "Code": "string",
        "Email": "string",
        "SSN": "string",
        "FirstName": "string",
        "LastName": "string",
        "Phone": "string",
        "CellPhone": "string",
        "ReferId": 0,
        "ReferUrl": "string",
        "Account": {
          "Id": 0,
          "Key": "string",
          "LoginName": "string",
          "Name": "string",
          "Roles": [
            0
          ],
          "Authorizations": [
            {
              "Id": 0,
              "Value": "string",
              "Code": "string"
            }
          ],
          "IsActive": true
        },
        "Companies": [
          {
            "Id": 0,
            "Key": "string",
            "Code": "string",
            "Name": "string",
            "OrgNo": "string",
            "Phone": "string",
            "ReferId": 0,
            "ReferUrl": "string",
            "DeliveryAddresses": [
              {
                "Id": 0,
                "CareOf": "string",
                "Line1": "string",
                "Line2": "string",
                "Zip": "string",
                "City": "string",
                "CountryId": 0,
                "Country": "string",
                "Region": "string",
                "IsValidated": true,
                "GlobalLocationNo": "string",
                "ShippingPhoneNumber": "string"
              }
            ],
            "InvoiceAddress": {
              "Id": 0,
              "CareOf": "string",
              "Line1": "string",
              "Line2": "string",
              "Zip": "string",
              "City": "string",
              "CountryId": 0,
              "Country": "string",
              "Region": "string",
              "IsValidated": true,
              "GlobalLocationNo": "string",
              "ShippingPhoneNumber": "string"
            },
            "UseInvoiceAddressAsDeliveryAddress": true,
            "Info": [
              {
                "Id": 0,
                "Value": "string",
                "Code": "string"
              }
            ],
            "PricelistIds": [
              0
            ],
            "ParentId": 0,
            "DeliveryMethodIds": [
              0
            ],
            "PaymentMethodIds": [
              0
            ],
            "Email": "string",
            "Flags": [
              {
                "Id": 0,
                "Name": "string",
                "Group": 0,
                "IsSelected": true
              }
            ],
            "VatNo": "string"
          }
        ],
        "DeliveryAddresses": [
          {
            "Id": 0,
            "CareOf": "string",
            "Line1": "string",
            "Line2": "string",
            "Zip": "string",
            "City": "string",
            "CountryId": 0,
            "Country": "string",
            "Region": "string",
            "IsValidated": true,
            "GlobalLocationNo": "string",
            "ShippingPhoneNumber": "string"
          }
        ],
        "InvoiceAddress": {
          "Id": 0,
          "CareOf": "string",
          "Line1": "string",
          "Line2": "string",
          "Zip": "string",
          "City": "string",
          "CountryId": 0,
          "Country": "string",
          "Region": "string",
          "IsValidated": true,
          "GlobalLocationNo": "string",
          "ShippingPhoneNumber": "string"
        },
        "Flags": [
          {
            "Id": 0,
            "Name": "string",
            "Group": 0,
            "IsSelected": true
          }
        ],
        "UseInvoiceAddressAsDeliveryAddress": true,
        "Info": [
          {
            "Id": 0,
            "Value": "string",
            "Code": "string"
          }
        ],
        "PricelistIds": [
          0
        ],
        "CrmId": "string",
        "IsActive": true,
        "Created": "2019-08-24T14:15:22Z",
        "Updated": "2019-08-24T14:15:22Z"
      },
      "ShipTo": {
        "Id": 0,
        "Key": "string",
        "Code": "string",
        "Email": "string",
        "SSN": "string",
        "FirstName": "string",
        "LastName": "string",
        "Phone": "string",
        "CellPhone": "string",
        "ReferId": 0,
        "ReferUrl": "string",
        "Account": {
          "Id": 0,
          "Key": "string",
          "LoginName": "string",
          "Name": "string",
          "Roles": [
            0
          ],
          "Authorizations": [
            {
              "Id": 0,
              "Value": "string",
              "Code": "string"
            }
          ],
          "IsActive": true
        },
        "Companies": [
          {
            "Id": 0,
            "Key": "string",
            "Code": "string",
            "Name": "string",
            "OrgNo": "string",
            "Phone": "string",
            "ReferId": 0,
            "ReferUrl": "string",
            "DeliveryAddresses": [
              {
                "Id": 0,
                "CareOf": "string",
                "Line1": "string",
                "Line2": "string",
                "Zip": "string",
                "City": "string",
                "CountryId": 0,
                "Country": "string",
                "Region": "string",
                "IsValidated": true,
                "GlobalLocationNo": "string",
                "ShippingPhoneNumber": "string"
              }
            ],
            "InvoiceAddress": {
              "Id": 0,
              "CareOf": "string",
              "Line1": "string",
              "Line2": "string",
              "Zip": "string",
              "City": "string",
              "CountryId": 0,
              "Country": "string",
              "Region": "string",
              "IsValidated": true,
              "GlobalLocationNo": "string",
              "ShippingPhoneNumber": "string"
            },
            "UseInvoiceAddressAsDeliveryAddress": true,
            "Info": [
              {
                "Id": 0,
                "Value": "string",
                "Code": "string"
              }
            ],
            "PricelistIds": [
              0
            ],
            "ParentId": 0,
            "DeliveryMethodIds": [
              0
            ],
            "PaymentMethodIds": [
              0
            ],
            "Email": "string",
            "Flags": [
              {
                "Id": 0,
                "Name": "string",
                "Group": 0,
                "IsSelected": true
              }
            ],
            "VatNo": "string"
          }
        ],
        "DeliveryAddresses": [
          {
            "Id": 0,
            "CareOf": "string",
            "Line1": "string",
            "Line2": "string",
            "Zip": "string",
            "City": "string",
            "CountryId": 0,
            "Country": "string",
            "Region": "string",
            "IsValidated": true,
            "GlobalLocationNo": "string",
            "ShippingPhoneNumber": "string"
          }
        ],
        "InvoiceAddress": {
          "Id": 0,
          "CareOf": "string",
          "Line1": "string",
          "Line2": "string",
          "Zip": "string",
          "City": "string",
          "CountryId": 0,
          "Country": "string",
          "Region": "string",
          "IsValidated": true,
          "GlobalLocationNo": "string",
          "ShippingPhoneNumber": "string"
        },
        "Flags": [
          {
            "Id": 0,
            "Name": "string",
            "Group": 0,
            "IsSelected": true
          }
        ],
        "UseInvoiceAddressAsDeliveryAddress": true,
        "Info": [
          {
            "Id": 0,
            "Value": "string",
            "Code": "string"
          }
        ],
        "PricelistIds": [
          0
        ],
        "CrmId": "string",
        "IsActive": true,
        "Created": "2019-08-24T14:15:22Z",
        "Updated": "2019-08-24T14:15:22Z"
      },
      "PaymentMethods": [
        {
          "Id": 0,
          "Name": "string",
          "TypeId": 0,
          "TypeName": "string",
          "Description": "string",
          "PartNo": "string",
          "Price": 0,
          "VatRate": 0,
          "ImagePath": "string",
          "IsSelected": true,
          "Service": {
            "Id": 0,
            "Name": "string",
            "Description": "string",
            "ImagePath": "string",
            "ImageKey": "string"
          },
          "ImageKey": "string",
          "IsForCompanyOnly": true,
          "IsForPersonOnly": true
        }
      ],
      "DeliveryMethods": [
        {
          "Id": 0,
          "Name": "string",
          "TypeId": 0,
          "TypeName": "string",
          "Description": "string",
          "PartNo": "string",
          "Price": 0,
          "VatRate": 0,
          "IsNotifiable": true,
          "ImagePath": "string",
          "IsSelected": true,
          "ImageKey": "string",
          "IsForCompanyOnly": true,
          "IsForPersonOnly": true,
          "Cost": 0,
          "StoreId": 0,
          "WarehouseId": 0,
          "LocationId": 0,
          "DropPoints": [
            {
              "Code": "string",
              "RoutingCode": "string",
              "Depot": "string",
              "Name1": "string",
              "Name2": "string",
              "Address1": "string",
              "Address2": "string",
              "PostalCode": "string",
              "City": "string",
              "CountryCode": "string",
              "Contact": "string",
              "Phone": "string",
              "Fax": "string",
              "Email": "string",
              "Latitude": 0.1,
              "Longitude": 0.1,
              "Distance": 0.1,
              "OpeningHours": [
                {}
              ],
              "IsSelected": true
            }
          ],
          "Code": "string",
          "Carrier": "string"
        }
      ],
      "Payments": [
        {
          "PaymentCode": 0,
          "Amount": 0,
          "CardNo": "string",
          "PaymentMethodId": 0,
          "PaymentServiceId": 0
        }
      ]
    },
    "PaymentParameters": [
      {
        "Name": "string",
        "Value": "string"
      }
    ]
  }'

Responses

Success

Body
Statusstring

String response. OK if successful, otherwise may have different values depending on PSP. MaxLength: 50.

StatusDescriptionstring

Descriptive text for the status. MaxLength: 255.

BasketIdinteger or null(int32)

Internal id of the associated basket.

OrderNostring

Order number if order's been created. MaxLength: 50.

PaymentCodestring

Internal identifier of this specific payment attempt. MaxLength: int.

PaymentReferencestring

External identifier of this specific payment attempt, usually from the PSP. MaxLength: 50.

HostedPaymentPagestring

Used when a payment should be finalized on a different platform, e.g. sending a link by SMS to customer. MaxLength: 50.

RedirectUrlstring

Configurated redirection URL after successful payment. MaxLength: 255.

RedirectParametersArray of objects(NameValue)(NameValue)

PSP specific data returned for the payment. See PSP documentation.

IsSyncronousboolean or null

Indicates if the payment attempt was synchronous or not.

PaymentServiceIdinteger or null(int32)

Internal id of the payment service used.

Response
{ "Status": "string", "StatusDescription": "string", "BasketId": 0, "OrderNo": "string", "PaymentCode": "string", "PaymentReference": "string", "HostedPaymentPage": "string", "RedirectUrl": "string", "RedirectParameters": [ {} ], "IsSyncronous": true, "PaymentServiceId": 0 }

Request

Updates Buyer information on a basket. If no Payer is associated with the Basket or the Payer is the same as the Buyer then Payer will also be updated. The same applies to ShipTo.

Query
basketIdinteger(int32)required

The internal id of the basket to update.

updatedByinteger(int32)required

Account internal id of current user.

pricelistSeedstring

A comma separated list of internal pricelist ids to use, if any. PriceLists supplied must be valid, either from the application's public priceList or any customer or company priceLists or any valid client priceLists. For clients configured to use priceListSeed exclusively in the API only the supplied priceLists will be used. If this is not configured, the supplied priceLists will be appended to the valid priceLists. If none is supplied, the default value for the application will be used in combination with any customer or company priceLists. This applies to both configurations.

cultureCodestring

Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

currencyIdstring

Internal id that specifies in which currency to display prices. If none is supplied, value is resolved from Application.

Bodyrequired

The actual Customer to use as Buyer. The Customer can optionally have one Company. If more than one Company is specified, the first will be used. Addresses will be resolve by first looking at the Company and then on the Customer. See UpdatePayer and UpdateShip on details regarding updating these address types.

Idinteger or null(int32)

The internal Storm Id of the Customer. When creating a new Customer leave this blank as Storm will generate the Id.

Keystring(guid)

The system wide unique Key of the Customer.

Codestring

The external code. Usually the id in the erp system. MaxLength: 50.

Emailstring

The Email address of the Customer. MaxLength: 255.

SSNstring

The social security number of the Customer. Used to identify the Customer for some payment methods. MaxLength: 50.

FirstNamestring

The FirstName of the Customer. MaxLength: 50.

LastNamestring

The LastName of the Customer. MaxLength: 50.

Phonestring

The PhoneNumber of the Customer. MaxLength: 50.

CellPhonestring

The CellPhone number of the Customer. MaxLength: 50.

ReferIdinteger or null(int32)

Used to tag a Customer with some external id.

ReferUrlstring

Used to tag a Customer with an incoming URL. MaxLength: 255.

Accountobject(CustomersAccount)(CustomersAccount)
CompaniesArray of objects(CustomersCompany)(CustomersCompany)

A list of Companies. A Customer can have many Companies. The first will be used as default. In the Checkout process just pass in one Company if any is to be used or the first will be used as default.

DeliveryAddressesArray of objects(CustomersAddress)(CustomersAddress)

A list of delivery Addresses for the Customer. When needed the first address in the list will be used. So it is vital in the checkout process to either sort them or just supply one delivery address. Company addresses will override Customer addresses if both exists in the Checkout process.

InvoiceAddressobject(CustomersAddress)(CustomersAddress)
FlagsArray of objects(CustomersFlag)(CustomersFlag)

A list of Flags for the Customer. See Flag for information about flags. Flags can be used in Promotions or otherwise to provide custom handling of specific Customers.

UseInvoiceAddressAsDeliveryAddressboolean

Can be use when updating or inserting addresses on Customer. If set to true the invoice address will be used as a delivery address as well. Then just an invoice address needs to be passed in. The deliveryAddress will be ignored. If set to false both invoice address and delivery address must be specified.

InfoArray of objects(IdValue)(IdValue)

Contains a list of id-value pairs specific to the client for this customer. Use ApplicationService.ListCustomerInfoTypes for id lookup.

PricelistIdsArray of integers(int32)

Contains a list of priceList ids valid for this customer. It will be empty if no priceLists exist. It can be used to check products lists if they are from a customer specific priceList. No need to pass this into List-methods since they are considered any way in the methods. This property should be considered as ReadOnly as priceLists are maintained else where.

CrmIdstring

Used to save the Customers external id from a crm-system MaxLength: 50.

IsActiveboolean or null

Specifies if the Customer is active or not.

Createdstring or null(date-time)

When the customer was created.

Updatedstring or null(date-time)

When the customer was last updated.

curl -i -X POST \
  'https://demo.storm.io/api/1.1/ShoppingService.svc/rest/UpdateBuyer?basketId=0&updatedBy=0' \
  -H 'Content-Type: application/json' \
  -d '{
    "Id": 0,
    "Key": "string",
    "Code": "string",
    "Email": "string",
    "SSN": "string",
    "FirstName": "string",
    "LastName": "string",
    "Phone": "string",
    "CellPhone": "string",
    "ReferId": 0,
    "ReferUrl": "string",
    "Account": {
      "Id": 0,
      "Key": "string",
      "LoginName": "string",
      "Name": "string",
      "Roles": [
        0
      ],
      "Authorizations": [
        {
          "Id": 0,
          "Value": "string",
          "Code": "string"
        }
      ],
      "IsActive": true
    },
    "Companies": [
      {
        "Id": 0,
        "Key": "string",
        "Code": "string",
        "Name": "string",
        "OrgNo": "string",
        "Phone": "string",
        "ReferId": 0,
        "ReferUrl": "string",
        "DeliveryAddresses": [
          {
            "Id": 0,
            "CareOf": "string",
            "Line1": "string",
            "Line2": "string",
            "Zip": "string",
            "City": "string",
            "CountryId": 0,
            "Country": "string",
            "Region": "string",
            "IsValidated": true,
            "GlobalLocationNo": "string",
            "ShippingPhoneNumber": "string"
          }
        ],
        "InvoiceAddress": {
          "Id": 0,
          "CareOf": "string",
          "Line1": "string",
          "Line2": "string",
          "Zip": "string",
          "City": "string",
          "CountryId": 0,
          "Country": "string",
          "Region": "string",
          "IsValidated": true,
          "GlobalLocationNo": "string",
          "ShippingPhoneNumber": "string"
        },
        "UseInvoiceAddressAsDeliveryAddress": true,
        "Info": [
          {
            "Id": 0,
            "Value": "string",
            "Code": "string"
          }
        ],
        "PricelistIds": [
          0
        ],
        "ParentId": 0,
        "DeliveryMethodIds": [
          0
        ],
        "PaymentMethodIds": [
          0
        ],
        "Email": "string",
        "Flags": [
          {
            "Id": 0,
            "Name": "string",
            "Group": 0,
            "IsSelected": true
          }
        ],
        "VatNo": "string"
      }
    ],
    "DeliveryAddresses": [
      {
        "Id": 0,
        "CareOf": "string",
        "Line1": "string",
        "Line2": "string",
        "Zip": "string",
        "City": "string",
        "CountryId": 0,
        "Country": "string",
        "Region": "string",
        "IsValidated": true,
        "GlobalLocationNo": "string",
        "ShippingPhoneNumber": "string"
      }
    ],
    "InvoiceAddress": {
      "Id": 0,
      "CareOf": "string",
      "Line1": "string",
      "Line2": "string",
      "Zip": "string",
      "City": "string",
      "CountryId": 0,
      "Country": "string",
      "Region": "string",
      "IsValidated": true,
      "GlobalLocationNo": "string",
      "ShippingPhoneNumber": "string"
    },
    "Flags": [
      {
        "Id": 0,
        "Name": "string",
        "Group": 0,
        "IsSelected": true
      }
    ],
    "UseInvoiceAddressAsDeliveryAddress": true,
    "Info": [
      {
        "Id": 0,
        "Value": "string",
        "Code": "string"
      }
    ],
    "PricelistIds": [
      0
    ],
    "CrmId": "string",
    "IsActive": true,
    "Created": "2019-08-24T14:15:22Z",
    "Updated": "2019-08-24T14:15:22Z"
  }'

Responses

Success

Body
Basketobject(Basket)(Basket)
Buyerobject(CustomersCustomer)(CustomersCustomer)
Payerobject(CustomersCustomer)(CustomersCustomer)
ShipToobject(CustomersCustomer)(CustomersCustomer)
PaymentMethodsArray of objects(PaymentMethod)(PaymentMethod)

List of available payment methods for this checkout. May be changed depending on basket contents. Generated by Storm.

DeliveryMethodsArray of objects(DeliveryMethod)(DeliveryMethod)

List of available delivery methods for this checkout. May be changed depending on basket contents. Generated by Storm.

PaymentsArray of objects(Payment)(Payment)

List of payment attemtps made for this checkout. Each payment method selected will create it's own entry in this list.

Response
{ "Basket": { "Id": 0, "CustomerId": 0, "CompanyId": 0, "SalesContactId": 0, "StatusId": 0, "CurrencyId": 0, "CurrencyCode": "string", "Comment": "string", "OrderReference": "string", "DiscountCode": "string", "ReferId": 0, "ReferUrl": "string", "ValidTo": "2019-08-24T14:15:22Z", "IsEditable": true, "Items": [], "Info": [], "Summary": {}, "AppliedPromotions": [], "IpAddress": "string", "AttestedBy": 0, "TypeId": 0, "DoHold": true, "IsBuyable": true, "InvoiceReference": "string", "PaymentMethodId": 0, "DeliveryMethodId": 0, "SalesAreaId": 0 }, "Buyer": { "Id": 0, "Key": "string", "Code": "string", "Email": "string", "SSN": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "Payer": { "Id": 0, "Key": "string", "Code": "string", "Email": "string", "SSN": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "ShipTo": { "Id": 0, "Key": "string", "Code": "string", "Email": "string", "SSN": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": {}, "Companies": [], "DeliveryAddresses": [], "InvoiceAddress": {}, "Flags": [], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [], "PricelistIds": [], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }, "PaymentMethods": [ {} ], "DeliveryMethods": [ {} ], "Payments": [ {} ] }
Operations
Operations
Operations
Operations
Operations
Operations
Operations