Discussions

Ask a Question
Back to all

Issue with Create a Cart POST request

I am attempting to create a button on my webpage that leads users to a cart with a single specified product in it. This is such that the user can easily/quickly checkout said product without needing to search for the itme, add it to their cart, then checkout.

Currently, I am trying to test this out using Postman. I can get a status of 201 and an icon on the UI (user's page) which shows that the API call is successfully creating a cart, however, when clicking on the cart icon I am constantly met with an error 500 (I would then need to manually clear the cart). Here is the request body I am currently using for the "Creates a Cart" POST api request:

{
"$type": "Asi.Soa.Commerce.DataContracts.CartData, Asi.Contracts",
"ComboOrder": {
"$type": "Asi.Soa.Commerce.DataContracts.ComboOrderData, Asi.Contracts",
"ComboOrderId": "",
"Order": {
"$type": "Asi.Soa.Commerce.DataContracts.OrderData, Asi.Contracts",
"Lines": [
{
"$type": "Asi.Soa.Commerce.DataContracts.OrderLineData, Asi.Contracts",
"Item": {
"$type": "Asi.Soa.Commerce.DataContracts.ItemSummaryData, Asi.Contracts",
"ItemClass": {
"$type": "Asi.Soa.Commerce.DataContracts.ItemClassSummaryData, Asi.Contracts",
"ItemClassId": "MEETING"
},
"ItemCode": "TEST1/REG",
"ItemId": "TEST1/REG",
"Name": "Registration Fee"
},
"QuantityOrdered": {
"$type": "System.Nullable`1[[Asi.Soa.Commerce.DataContracts.QuantityData, Asi.Contracts]], mscorlib",
"Amount": 1
}
}
]
}
},
"UserId": "34231",
"UpdateInformation": {
"$type": "Asi.Soa.Core.DataContracts.EntityUpdateInformationData, Asi.Contracts",
"CreatedBy": "34231",
"CreatedOn": "2023-10-27T00:00:00Z",
"UpdatedBy": "34231",
"UpdatedOn": "2023-10-27T00:00:00Z"
}
}

My suspicion is that there might be an issue with the ComboOrder field at the moment but I am unsure. Can one of the devs chip in here? Thank you

Admin

Hello,

You would need SoldToCustomerParty and Delivery properties in your request within Order.

Example:

"Order": { "$type": "Asi.Soa.Commerce.DataContracts.OrderData, Asi.Contracts", "Lines": [ { "$type": "Asi.Soa.Commerce.DataContracts.OrderLineData, Asi.Contracts", "Item": { "$type": "Asi.Soa.Commerce.DataContracts.ItemSummaryData, Asi.Contracts", "ItemClass": { "$type": "Asi.Soa.Commerce.DataContracts.ItemClassSummaryData, Asi.Contracts", "ItemClassId": "SALES" }, "ItemCode": "AsscCEOGuide", "ItemId": "AsscCEOGuide", "Name": "Registration Fee" }, "QuantityOrdered": { "$type": "System.Nullable`1[[Asi.Soa.Commerce.DataContracts.QuantityData, Asi.Contracts]], mscorlib", "Amount": 1 } } ], "Delivery": { "$type": "Asi.Soa.Commerce.DataContracts.DeliveryDataCollection, Asi.Contracts", "$values": [ { "$type": "Asi.Soa.Commerce.DataContracts.DeliveryData, Asi.Contracts", "Address": { "$type": "Asi.Soa.Membership.DataContracts.FullAddressData, Asi.Contracts", "AdditionalLines": { "$type": "Asi.Soa.Membership.DataContracts.AddressLineDataCollection, Asi.Contracts", "$values": [] }, "Address": { "$type": "Asi.Soa.Membership.DataContracts.AddressData, Asi.Contracts", "AddressId": "119", "AddressLines": { "$type": "Asi.Soa.Membership.DataContracts.AddressLineDataCollection, Asi.Contracts", "$values": [ "4200 Gibson Street" ] }, "CityName": "Carellton", "CountryCode": "US", "CountryName": "United States", "CountrySubEntityCode": "CO", "CountrySubEntityName": "Colorado", "CountyName": "Harris", "FullAddress": "4200 Gibson Street\rCarellton, CO 77007\rUNITED STATES", "PostalCode": "77007" }, "AddresseeText": "Ms. Erica Taber\r\n4200 Gibson Street\rCarellton, CO 77007\rUNITED STATES", "AddressPurpose": "Address", "CommunicationPreferences": { "$type": "Asi.Soa.Membership.DataContracts.CommunicationPreferenceDataCollection, Asi.Contracts", "$values": [ { "$type": "Asi.Soa.Membership.DataContracts.CommunicationPreferenceData, Asi.Contracts", "Reason": "default" }, { "$type": "Asi.Soa.Membership.DataContracts.CommunicationPreferenceData, Asi.Contracts", "Reason": "mail" }, { "$type": "Asi.Soa.Membership.DataContracts.CommunicationPreferenceData, Asi.Contracts", "Reason": "bill" }, { "$type": "Asi.Soa.Membership.DataContracts.CommunicationPreferenceData, Asi.Contracts", "Reason": "ship" } ] }, "Email": "ericataber@mailinator.com", "FullAddressId": "119", "Note": "P.S.I. Code 9450", "Phone": "(713) 897-5650", "Salutation": { "$type": "Asi.Soa.Membership.DataContracts.PartySalutationData, Asi.Contracts", "SalutationMethod": { "$type": "Asi.Soa.Membership.DataContracts.PartySalutationMethodSummaryData, Asi.Contracts", "PartySalutationMethodId": "main" }, "Text": "Ms. Erica Taber" }, "DisplayName": "Erica", "DisplayOrganizationName": "American Business Services" }, "AddressId": "119", "CustomerParty": { "$type": "Asi.Soa.Commerce.DataContracts.CustomerPartyData, Asi.Contracts", "PartyId": "147" }, "DeliveryId": "2b6e8a89-4126-4a97-8c48-413b41aa364b", "DeliveryMethod": { "$type": "Asi.Soa.Commerce.DataContracts.DeliveryMethodData, Asi.Contracts" } } ] }, "SoldToCustomerParty": { "$type": "Asi.Soa.Commerce.DataContracts.CustomerPartyData, Asi.Contracts", "Party": { "$type": "Asi.Soa.Membership.DataContracts.PersonData, Asi.Contracts", "UpdateInformation": { "$type": "Asi.Soa.Core.DataContracts.EntityUpdateInformationData, Asi.Contracts", "CreatedBy": "MANAGER", "CreatedOn": "2004-04-16T14:19:38.753", "UpdatedBy": "BRIANM", "UpdatedOn": "2023-04-01T09:48:51.16" }, "PartyId": "147", "Id": "147", "UniformId": "dc770d25-9ed6-4101-a5e9-c2a2014651a8", "Status": { "$type": "Asi.Soa.Membership.DataContracts.PartyStatusData, Asi.Contracts", "PartyStatusId": "A", "Name": "Active", "Description": "Active" } }, "PartyId": "147" } } },

Hope that helps!

Thanks,

Tarini

Marked as answered by Jadie Hooten

This helped me, very useful information to include in the docs

ο»Ώ

Contact us
Copyright Β© Advanced Solutions International, All rights reserved.