POST/guest_checkout_session/{checkoutSessionId}/update_shipping_address
Note: The Order API (v2) currently only supports the guest payment/checkout flow. If you need to support member payment/checkout flow, use the v1_beta version of the Order API.
Important! (Limited Release) This method is only available to select developers approved by business units.
This method changes the shipping address for the order in an eBay guest checkout session. All the line items in an order must be shipped to the same address, but the shipping method can be specific to the line item.
Note: If the address submitted cannot be validated, a warning message will be returned. This does not prevent the method from executing, but you may want to verify the address.
For a list of supported sites and other restrictions, see API Restrictions in the Order API overview.
Input
Resource URI
This method is supported in Sandbox environment. To access the endpoint, just replace the apix.ebay.com
root URI with apix.sandbox.ebay.com
URI parameters
Parameter | Type | Description |
---|---|---|
checkoutSessionId | string | This path parameter specifies the unique eBay-assigned session identifier for a specific eBay marketplace. This value is returned by the initiateGuestCheckoutSession method. Note: When using this ID, the X-EBAY-C-MARKETPLACE-ID value and developer App ID must be the same as that used when this guest checkout session was created. See Checkout session restrictions in the Buy Integration Guide for details. Occurrence: Required |
HTTP request headers
All requests made to eBay REST operations require you to provide the Authorization
HTTP header for authentication authorization.
The table below shows additional HTTP request headers that are either required, conditionally required, or strongly recommended for this method. Other standard HTTP request headers- opens rest request components page (not in this table) can also be used, but they are optional.
Header | Type | Description |
---|---|---|
Content-Type | string | This header indicates the format of the request body provided by the client. Its value should be set to application/json. For more information, refer to HTTP request headers. Occurrence: Required |
X-EBAY-C-ENDUSERCTX | string | This header is used to specify the deviceId for the device/user attempting to make the call. It contains an alphanumeric string that allows a payment gateway to track an API call attempt and confirm that it is a verified payment attempt by a device/user. Occurrence: Conditional |
X-EBAY-C-MARKETPLACE-ID | string | This header identifies the eBay marketplace where the order will occur. Note: For this method, this value must match the X-EBAY-C-MARKETPLACE-ID used when the associated checkout session was created. See HTTP request headers for the marketplace ID values. Occurrence: Required |
OAuth scope
This request requires an access token created with the client credentials grant flow, using one or more scopes from the following list (please check your Application Keys page for a list of OAuth scopes available to your application):
https://api.ebay.com/oauth/api_scope/buy.guest.order
See OAuth access tokens for more information.
Request payload
Copy complete valid JSON to clipboardRequest fields
Input container/field | Type | Description |
---|---|---|
addressLine1 | string | The first line of the street address where the item is being shipped.
Occurrence: Required |
addressLine2 | string | The second line of the street address where the item is being shipped. This optional field can be used for information such as 'Suite Number' or 'Apt Number'.
Occurrence: Optional |
city | string | The city of the address where the item is being shipped. Occurrence: Required |
country | CountryCodeEnum | The two letter code representing the country of the address. Occurrence: Required |
county | string | The county of the address where the item is being shipped. Occurrence: Optional |
phoneNumber | string | The phone number of the person receiving the package. Occurrence: Required |
postalCode | string | The postal code of the address where the item is being shipped. Occurrence: Conditional |
recipient | Recipient | The name of the person receiving the package. Occurrence: Required |
recipient.firstName | string | The first name of the person receiving the purchase order. Occurrence: Required |
recipient.lastName | string | The last name of the person receiving the purchase order. Occurrence: Required |
stateOrProvince | string | The state or province of the address. Occurrence: Conditional |
Output
HTTP response headers
This call has no response headers.
Response payload
Response fields
Output container/field | Type | Description |
---|---|---|
appliedCoupons | array of Coupon | A container that returns the information for the coupons that were applied in the guest checkout session. Occurrence: Conditional |
appliedCoupons.redemptionCode | string | The coupon redemption code. Occurrence: Always |
checkoutSessionId | string | The eBay-assigned guest checkout session ID. This ID is created after a successful initiateGuestCheckoutSession call. Occurrence: Always |
lineItems | array of LineItem | An array of line items associated with the guest checkout session. Occurrence: Always |
lineItems.authenticityVerification | AuthenticityVerificationProgram | A container returned for orders that are eligible for eBay's Authenticity Guarantee service. The seller ships Authenticity Guarantee service items to the authentication partner instead of the buyer. If the item is successfully authenticated, the authenticator will ship the item to the buyer. Occurrence: Conditional |
lineItems.authenticityVerification.description | string | An informational message that applies to the Authenticity Guarantee program. Occurrence: Conditional |
lineItems.authenticityVerification.outcomeReason | string | An informational message regarding the authentication outcome of an Authenticity Guarantee verification inspection. Occurrence: Conditional |
lineItems.authenticityVerification.status | AuthenticityVerificationStatusEnum | An enumerated value that indicates whether the order line item has passed or failed the Authenticity Guarantee verification inspection, or whether the inspection and/or results are still pending.
Occurrence: Conditional |
lineItems.authenticityVerification.termsWebUrl | string | The terms and conditions that apply to the Authenticity Guarantee program. Occurrence: Conditional |
lineItems.baseUnitPrice | Amount | The cost of a single quantity of the line item. This is the starting point for computing the price during the checkout session. Occurrence: Always |
lineItems.baseUnitPrice.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.baseUnitPrice.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.fees | array of Fee | A breakdown of the fees applicable to the line item. Occurrence: Conditional |
lineItems.fees.amount | Amount | A container for the currency type and monetary amount of the fee associated with the line item. Occurrence: Conditional |
lineItems.fees.amount.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.fees.amount.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.fees.feeType | FeeEnum | The type of fee associated with the line item. Occurrence: Conditional |
lineItems.image | Image | An eBay-assigned URL of the item image. Occurrence: Always |
lineItems.image.imageUrl | string | The URL for the image. Occurrence: Always |
lineItems.itemId | string | The eBay identifier of an item. This ID is returned by the Browse and Feed API methods. The ID is in RESTful item ID format. Occurrence: Always |
lineItems.lineItemId | string | A unique eBay-assigned ID value that identifies a line item in a checkout session. Occurrence: Always |
lineItems.netPrice | Amount | The total cost for the line item, taking into account the quantity, any seller item discounts, and any coupon that applies. Occurrence: Always |
lineItems.netPrice.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.netPrice.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.promotions | array of Promotion | An array of promotions applied to the line item. Occurrence: Conditional |
lineItems.promotions.discount | Amount | The details regarding the monetary value of the promotional discount. Occurrence: Conditional |
lineItems.promotions.discount.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.promotions.discount.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.promotions.message | string | The text for the promotion title, which describes the promotion. Occurrence: Conditional |
lineItems.promotions.promotionType | string | The kind of promotion. Some examples are: Occurrence: Conditional |
lineItems.quantity | integer | The quantity ordered for the line item. Occurrence: Always |
lineItems.seller | Seller | A container that returns the information about the seller, such as their eBay user name. Occurrence: Always |
lineItems.seller.username | string | The user name created by the seller for use on eBay. Occurrence: Always |
lineItems.shippingOptions | array of ShippingOption | An array of shipping options that are available for the line item. By default, the first one will be selected. Occurrence: Always |
lineItems.shippingOptions.baseDeliveryCost | Amount | The delivery cost using this shipping option, for this line item, before any delivery discounts are applied. Occurrence: Always |
lineItems.shippingOptions.baseDeliveryCost.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.shippingOptions.baseDeliveryCost.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.shippingOptions.deliveryDiscount | Amount | The monetary value of any delivery discounts. Occurrence: Always |
lineItems.shippingOptions.deliveryDiscount.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.shippingOptions.deliveryDiscount.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.shippingOptions.importCharges | Amount | The Global Shipping Program import charges for this line item. Occurrence: Conditional |
lineItems.shippingOptions.importCharges.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.shippingOptions.importCharges.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
lineItems.shippingOptions.maxEstimatedDeliveryDate | string | The end of the date range in which the purchase order is expected to be delivered to the shipping address. Occurrence: Conditional |
lineItems.shippingOptions.minEstimatedDeliveryDate | string | The beginning of the date range in which the purchase order is expected to be delivered to the shipping address. Occurrence: Conditional |
lineItems.shippingOptions.selected | boolean | A field that indicates whether the shipping method is selected. Occurrence: Always |
lineItems.shippingOptions.shippingCarrierCode | string | The shipping provider for the line item, such as FedEx or USPS. Occurrence: Always |
lineItems.shippingOptions.shippingOptionId | string | A unique ID for the selected shipping option/method. Occurrence: Always |
lineItems.shippingOptions.shippingServiceCode | string | The name of the shipping service code. For example, Priority Mail Express (provided by USPS) or FedEx International Priority (Provided by FedEx). Occurrence: Always |
lineItems.taxDetails | array of TaxDetail | A container that returns the tax information for the line item. Occurrence: Conditional |
lineItems.taxDetails.includedInPrice | boolean | A field that indicates whether tax was applied for the cost of the item and its shipping. Occurrence: Conditional |
lineItems.taxDetails.taxJurisdiction | TaxJurisdiction | A container that returns the tax jurisdiction information. Occurrence: Conditional |
lineItems.taxDetails.taxJurisdiction.region | Region | The region of the tax jurisdiction. Occurrence: Conditional |
lineItems.taxDetails.taxJurisdiction.region.regionName | string | A localized text string that indicates the name of the region. Taxes are generally charged at the state/province level, or at the country level in the case of VAT tax. Occurrence: Conditional |
lineItems.taxDetails.taxJurisdiction.region.regionType | RegionTypeEnum | An enumeration value that indicates the type of region for the tax jurisdiction.
Occurrence: Conditional |
lineItems.taxDetails.taxJurisdiction.taxJurisdictionId | string | The identifier of the tax jurisdiction. Occurrence: Conditional |
lineItems.taxDetails.taxType | TaxType | A field that indicates the type of tax that may be collected for the item. Occurrence: Conditional |
lineItems.title | string | The seller-created title of the item. Occurrence: Always |
pricingSummary | PricingSummaryV2 | A container that breaks down the costs for the order, including total cost, shipping cost, tax, fees, and any discounts. Occurrence: Always |
pricingSummary.additionalSavings | Amount | The total amount of the coupon discounts in the purchase order. Occurrence: Conditional |
pricingSummary.additionalSavings.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.additionalSavings.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.adjustment | Adjustment | The total amount of any seller adjustments. An adjustment can be a credit or debit. This is used to catch any monetary changes to the order that are not already captured in one of the other fields. Occurrence: Always |
pricingSummary.adjustment.amount | Amount | The container that returns the amount and currency of an adjustment. Occurrence: Always |
pricingSummary.adjustment.amount.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.adjustment.amount.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.adjustment.label | string | The text indicating what the adjustment was for. Occurrence: Always |
pricingSummary.deliveryCost | Amount | The delivery cost for all of the line items, after any delivery discounts are applied. Occurrence: Always |
pricingSummary.deliveryCost.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.deliveryCost.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.fee | Amount | The total amount of any fees for all the line items in the order, such as a recycling fee. Occurrence: Always |
pricingSummary.fee.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.fee.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.importCharges | ImportChargesV2 | The sum of all Global Shipping Program import charges, for all the line items in the order. Occurrence: Conditional |
pricingSummary.importCharges.amount | Amount | The amount of the import charge. Occurrence: Conditional |
pricingSummary.importCharges.amount.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.importCharges.amount.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.importCharges.applicableChargeType | ApplicableChargeTypeEnum | The type of charge to apply to the order, such as import duties. Occurrence: Conditional |
pricingSummary.importTax | ImportTax | The type of import tax applicable to the order, and the total amount of tax for all line items in the order. Occurrence: Conditional |
pricingSummary.importTax.amount | Amount | The total amount of import tax for all line items of an order. Occurrence: Conditional |
pricingSummary.importTax.amount.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.importTax.amount.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.importTax.importTaxType | ImportTaxTypeEnum | An enumeration value that indicates the type of import tax applicable to the order. Currently, the only applicable import tax is the Goods and Services tax (indicated with Occurrence: Conditional |
pricingSummary.priceDiscount | Amount | The total discount amount for all line items in the order. Occurrence: Always |
pricingSummary.priceDiscount.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.priceDiscount.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.priceSubtotal | Amount | The total cost for all line items in the order, taking into account the item quantity, but before adding taxes and delivery costs, or applying discounts, fees, and adjustments. Occurrence: Always |
pricingSummary.priceSubtotal.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.priceSubtotal.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.tax | Amount | The total amount of taxes for all line items in the order. Occurrence: Always |
pricingSummary.tax.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.tax.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.total | Amount | The total cost of the order, which includes: (priceSubtotal - priceDiscount) + deliveryCost + tax +/- adjustment + fee + importCharges - additionalSavings. Occurrence: Always |
pricingSummary.total.currency | CurrencyCodeEnum | The currency used in the monetary transaction. Generally, this is the currency used by the country of the eBay site offering the item. Occurrence: Conditional |
pricingSummary.total.value | string | The amount of the currency specified in the currency field. The value of the currency defaults to the standard currency used by the country of the eBay site offering the item. Occurrence: Conditional |
shippingAddress | ShippingAddress | A container that returns the address to which the purchase order will be shipped. Occurrence: Always |
shippingAddress.addressLine1 | string | The first line of the street address where the item is being shipped.
Occurrence: Always |
shippingAddress.addressLine2 | string | The second line of the street address where the item is being shipped. This optional field can be used for information such as 'Suite Number' or 'Apt Number'.
Occurrence: Conditional |
shippingAddress.city | string | The city of the address where the item is being shipped. Occurrence: Always |
shippingAddress.country | CountryCodeEnum | The two letter code representing the country of the address. Occurrence: Always |
shippingAddress.county | string | The county of the address where the item is being shipped. Occurrence: Conditional |
shippingAddress.phoneNumber | string | The phone number of the person receiving the package. Occurrence: Always |
shippingAddress.postalCode | string | The postal code of the address where the item is being shipped. Occurrence: Conditional |
shippingAddress.recipient | Recipient | The name of the person receiving the package. Occurrence: Always |
shippingAddress.recipient.firstName | string | The first name of the person receiving the purchase order. Occurrence: Conditional |
shippingAddress.recipient.lastName | string | The last name of the person receiving the purchase order. Occurrence: Conditional |
shippingAddress.stateOrProvince | string | The state or province of the address. Occurrence: Conditional |
warnings | array of ErrorDetailV3 | An array of errors or warnings that were generated during the method processing. Occurrence: Conditional |
warnings.category | string | This string value indicates the error category. There are three categories of errors: request errors, application errors, and system errors. Occurrence: Conditional |
warnings.domain | string | The name of the primary system where the error occurred. This is relevant for application errors. Occurrence: Conditional |
warnings.errorId | integer | A unique code that identifies the particular error or warning that occurred. Your application can use error codes as identifiers in your customized error-handling algorithms. Occurrence: Conditional |
warnings.inputRefIds | array of string | An array of reference IDs that identify the specific request elements most closely associated to the error or warning, if any. Occurrence: Conditional |
warnings.longMessage | string | A detailed description of the condition that caused the error or warning, and information on what what must be done to correct the problem. Occurrence: Conditional |
warnings.message | string | A description of the condition that caused the error or warning. Occurrence: Conditional |
warnings.outputRefIds | array of string | An array of reference IDs that identify the specific response elements most closely associated to the error or warning, if any. Occurrence: Conditional |
warnings.parameters | array of ErrorParameterV3 | An array of warning and error messages that return one or more variables contextual information about the error or warning. This is often the field or value that triggered the error or warning. Occurrence: Conditional |
warnings.parameters.name | string | The name of the input field that caused an issue with the method request. Occurrence: Conditional |
warnings.parameters.value | string | The actual value that was passed in for the element specified in the name field. Occurrence: Conditional |
warnings.subdomain | string | The name of the subdomain in which the error or warning occurred. Occurrence: NA |
HTTP status codes
This call can return one of the following HTTP status codes. For an overview of the status codes, see HTTP status codes in Using eBay RESTful APIs.
Status | Meaning |
---|---|
200 | OK |
400 | Bad Request |
403 | Access Forbidden |
404 | Resource Not Found |
409 | Conflict |
500 | Internal Error |
Error codes
For more on errors, plus the codes of other common errors, see Handling errors.
Code | Domain | Category | Meaning |
---|---|---|---|
15000 | API_ORDER | APPLICATION | There was a problem with an eBay internal system or process. Contact eBay developer support for assistance. |
15001 | API_ORDER | REQUEST | Missing field: {fieldName}. The indicated field is required for this request. Add the field and resubmit the call. |
15002 | API_ORDER | REQUEST | Invalid field: {fieldName}. The indicated field contains an invalid value. Correct the value and resubmit the call. |
15003 | API_ORDER | REQUEST | The checkout session requested does not exist. |
15019 | API_ORDER | BUSINESS | To place an order, you must have at least one line item. Use the initiateCheckoutSession call to add line items (maximum of {maxLineItems}) and create a new checkout session. |
15021 | API_ORDER | BUSINESS | This checkout session cannot be updated because the order has already been placed. |
15025 | API_ORDER | REQUEST | The App is not authorized to access this resource. |
15026 | API_ORDER | BUSINESS | The item is not shippable to the specified shipping address. |
15027 | API_ORDER | BUSINESS | The value {fieldValue} is not supported for the {fieldName}. The supported values are: {supportedValues}. |
15029 | API_ORDER | REQUEST | The X-EBAY-C-MARKETPLACE-ID value {fieldValue} is invalid for this checkout session because it is different from the X-EBAY-C-MARKETPLACE-ID header value used to create the session. For all calls in this checkout session, you must use X-EBAY-C-MARKETPLACE-ID {supportedValues}. |
15032 | API_ORDER | REQUEST | After using the 'initiateGuestPayment' call, you cannot make changes to the cart. If you need to change the cart, you must start over using the 'initiateGuestCheckoutSession' call. |
15047 | API_ORDER | BUSINESS | In compliance with applicable economic sanctions and trade restrictions, eBay is unavailable in your location. If you believe you are receiving this notice in error, please contact eBay's Customer Service. |
15048 | API_ORDER | REQUEST | The value of {fieldName} is too long. For more information, see the documentation for this call. |
17002 | API_ORDER | REQUEST | Invalid character(s) found in the shipping address. Please check name and shipping address fields, remove invalid character(s) and resubmit the call. |
Warnings
For more on warnings, plus the codes of other common warnings, see Handling errors.
Code | Domain | Category | Meaning |
---|---|---|---|
15007 | API_ORDER | REQUEST | The address provided may be incorrect. You may proceed with this address or provide a correct address. |
Samples
New to making API calls? Please see Making a Call.
Note: Identifiers, such as order IDs or user IDs, and personal data in these samples might be anonymized or may no longer be active on eBay. If necessary, substitute current, relevant eBay data in your requests.
Sample 1: Update the Shipping Address
This call changes the shipping address. The entire purchase order is shipped to only one address, but it can be different than the address of the buyer.
Input
The inputs are checkoutSessionId as a URI parameter, along with the name of the recipient and their address in the payload.
POSThttps://apix.ebay.com/buy/order/v2/guest_checkout_session/1********1/update_shipping_address
Output
The output contains the checkout session information. You can verify that the address has been updated by checking the shippingUserAddress container.