Before creating offers you need to set up shipping profiles to define your shipping policies in refurbed. With shipping profiles, you can set the country from where the goods are going to be shipped and in which countries you want to ship them, including the delivery time and eventual shipping costs. Shipping costs that are set for a shipping profile are added automatically to your offer price. The shipping cost can also be set to 0 (zero). The customer will see this end price as the final sales price, shipping costs are not listed separately.

All services and operations concerning the shipping profiles must be called with ShippingProfileService in the URL followed by the command/operation.

E.g.: https://api.refurbed.com/refb.merchant.v1.ShippingProfileService/ListShippingProfiles

All calls must be done using POST method.

Create (CreateShippingProfile)

Create a shipping profile by specifying the exact address of your warehouse (source) and the countries you choose to ship to. For each destination country you have to specify the shipping costs, currency, a minimum and maximum of days it will take your carrier to deliver an order, the name of your carrier, and an order cut-off time. You can get a list of all available carriers with their name and slug by calling ShippingProfileService/ListAvailableCarriers. When specifying the carrier name please refer to the slug of the carrier. The order cut-off time is the time by which orders must be placed to be shipped within promised timeframes. If you have warehouses (sources) in different countries, it is best to create shipping profiles for each of them.

In the response, you will get the shipping profile ID and an overview of the profile you have just created. The shipping profile ID is used to refer to your shipping profiles e.g. when updating profiles or creating offers.

<aside> ⚠️ A secondary shipping profile can be set for an offer but this feature currently has no effect. We will let you know when we activate this feature in a future release.

</aside>

Read (GetShippingProfile / ListShippingProfiles)

You can get an overview of all existing shipping profiles by using the List command. The response will contain an array/list of all shipping profiles according to the pagination rules with all related information. As for every read command that is served over our API you can use extensive filters and sorting by sending a specific payload in the request header. To receive information about one specific shipping profile please use the Get command. Send the shipping profile ID in the request payload.

Update (UpdateShippingProfile)

In the request payload, you will need to specify the ID of the shipping profile that you want to change. You will receive the ID if you create a new profile in the response or by using a method in the READ section above. Use this endpoint to add new destination countries to your existing shipping profiles, update destination countries with new delivery times and/or shipping costs, or remove destination countries you don’t want to ship to anymore.

Delete (DeleteShippingProfile)

Delete a shipping profile by referring to the shipping profile ID in the request body.

<aside> ⚠️ You can only delete shipping profiles that are not connected to any active offers. The number of offers that are connected to a profile (num_offers_assigned) will be returned in the object returned by List or Get Method.

</aside>

Workflow Example

You have multiple shipping profiles set up and want to reduce to one shipping profile. To get a list of all offers that are currently connected to a certain shipping profile call OfferService/ListOffers and filter for the shipping_profile_id

{
  "pagination": {
    "limit": 100
  },
    "filter": {
        "shipping_profile_id": {
            "any_of": [
                "2"
            ]
        }
    }
}

You can now update the shipping profile ID for all offers from the old shipping profile ID to the new one with OfferService/BatchUpdateOffers. Once no offers are connected to the old shipping profile you can delete it by calling DeleteShippingProfile.