Fedex Logo
Developer Portal

Pickup Request API

Introduzione

L'API richiesta di ritiro vi permette di verificare la disponibilità del ritiro, programmare un corriere per il ritiro e annullare una richiesta di ritiro.

L'API richiesta di ritiro può essere utilizzata con colli nuovi o già elaborati in tutte le regioni per spedizioni FedEx Express e FedEx Ground (reso e in uscita). Questa guida dettagliata vi aiuterà a conoscere tutto ciò che serve in merito a tale API.

Dettagli dell'API richiesta di ritiro

Di seguito vengono descritte le funzioni associate all'API richiesta di ritiro.

Disponibilità del ritiro

Con questa funzione potete controllare la disponibilità del servizio di ritiro in base alla richiesta inserita. La disponibilità del ritiro dipende da due fattori: l'orario massimo di ritiro e l'orario di accesso.

Orario massimo di ritiro - L'orario massimo consentito per programmare un ritiro. Si tratta dell'ora locale in base al codice postale del ritiro.

Orario di accesso - Il tempo tra l'ora di disponibilità del ritiro (quando il collo è pronto per essere ritirato) e l'ora in cui l'autista è pronto a ritirare il collo.

Crea ritiro

Questa opzione vi permette di programmare un ritiro e si applica alle spedizioni nazionali ed internazionali FedEx Express® e FedEx Ground®. Per le spedizioni FedEx Ground e FedEx Express, l'API richiesta di ritiro restituisce un numero di conferma di ritiro e, con richiesta Express, restituisce il codice località per il ritiro programmato. Con questa API potete inoltre programmare il ritiro per le spedizioni di reso.

La riga aggiuntiva nell'indirizzo del destinatario (terza riga dell'indirizzo) vi permette di fornire dettagli più completi e accurati sulla località per una consegna più veloce delle spedizioni FedEx Express®. Potete risparmiare tempo ed energia programmando il ritiro con un corriere FedEx dal vostro o da un altro indirizzo pagando un supplemento.

Annulla ritiro

Questa opzione vi permette di annullare un ritiro precedentemente programmato e si applica alle spedizioni nazionali e internazionali FedEx Express and FedEx Ground. I ritiri nazionali e internazionali FedEx Express possono essere annullati il giorno stesso, mentre per le spedizioni nazionali e internazionali FedEx Ground il ritiro può essere annullato 24 ore dopo l'invio della richiesta. Se la sua spedizione è già stata ritirata, contattate il Servizio Clienti FedEx locale per procedere all'annullamento.

Dettagli della richiesta di ritiro

Richieste di ritiro FedEx Express

  • L'ora in cui i colli saranno pronti per essere ritirati non deve essere superiore all'orario massimo di ritiro relativo al codice postale della località. L'orario massimo di ritiro viene indicato nella richiesta disponibilità del ritiro.
  • Il lasso di tempo che intercorre tra il momento in cui i colli saranno pronti e il momento in cui il corriere non potrà più entrare nei locali per ritirarli non deve essere inferiore all'orario di accesso, indicato nella richiesta disponibilità del ritiro.
  • Ad esempio: "PT4H0M" indica che l'orario di ritiro è 4 ore e 0 minuti.

  • I ritiri FedEx Express possono essere programmati per il giorno lavorativo corrente o successivo.
  • Il numero massimo di colli per una singola richiesta di ritiro è 99.
  • Se disponete già di un regolare ritiro programmato, non è necessario programmare un ritiro una tantum o aggiungere un altro regolare ritiro programmato.
  • Non è possibile modificare una richiesta di ritiro. Dovete annullare la richiesta originale e inserirne una nuova.
  • I sistemi FedEx ora supportano la funzionalità di ritiro nel Regno Unito.

Richieste di ritiro FedEx Ground

  • Il ritiro può essere programmato per il giorno lavorativo successivo o per qualsiasi giorno lavorativo fino a due settimane in anticipo.
  • Il numero massimo di colli per una singola richiesta di ritiro è 99.
  • Se disponete già di un regolare ritiro programmato, non è necessario programmare un ritiro una tantum o aggiungere un altro regolare ritiro programmato.
  • Il ritiro presso indirizzi privati è disponibile pagando un supplemento.
  • Non è possibile modificare una richiesta di ritiro. Dovete annullare la richiesta originale e inserirne una nuova.

Tipi di servizi dell'API richiesta di ritiro

Ritiro FedEx Express

Quando si richiede un ritiro FedEx Express, anche attraverso fedex.com e il Servizio Clienti FedEx, si applica un costo per il ritiro da parte del corriere.

Ritiro FedEx Ground

FedEx Ground fornisce un servizio di ritiro su richiesta pagando un supplemento. Per i clienti che dispongono di un regolare ritiro programmato, calcoliamo la tariffa di ritiro settimanale del codice cliente associato al ritiro programmato.

  • Per i clienti che non hanno il ritiro fisso, calcoliamo una tariffa per collo per il ritiro on call. Le tariffe per il ritiro on call non si applicano se consegnate il collo presso un punto di ritiro FedEx. Inoltre, le tariffe di ritiro on call non si applicano ai ritiri FedEx Ground® Economy (prima chiamato FedEx SmartPost®) Print Return Label, FedEx Ground® Economy (prima chiamato FedEx SmartPost®) Email Return Label e FedEx Ground® Package Returns Program.
  • Per i clienti con regolare ritiro programmato, FedEx Ground fornisce il servizio di ritiro su richiesta da un indirizzo diverso da quello di spedizione del codice cliente FedEx Ground. Per questo servizio è previsto un supplemento per il ritiro da un indirizzo alternativo per ogni singolo indirizzo a settimana.

FedEx Extra Hours

I servizi FedEx Extra Hours sono disponibili per il ritiro con transito overnight di un giorno dal lunedì al venerdì, il che consente agli esercenti di evadere gli ordini serali con consegna locale il giorno successivo tramite FedEx Express.

Per maggiori informazioni sui servizi disponibili visitate fedex.com.

Come funziona l'API richiesta di ritiro

Di seguito vengono descritte le opzioni di ritiro disponibili nell'API richiesta di ritiro.

Controlla disponibilità del ritiro

Utilizzare questo endpoint per richiedere i dettagli sulla programmazione del ritiro disponibili.

Le informazioni di input chiave associate a questa richiesta sono le seguenti.

  • Indirizzo di ritiro/dettagli postali.
  • Tipo di richiesta di ritiro (ad esempio stesso giorno/giorno futuro).
  • Vettore di trasporto FedEx per il ritiro (es. Express/Ground)
  • Ritiro nazionale/internazionale.

La risposta positiva a questa richiesta restituirà i dettagli del programma di ritiro disponibile, come l'orario limite per il ritiro, la data di ritiro, l'orario di accesso per il ritiro, l'orario di collo pronto predefinito e altri dettagli sulla disponibilità programmata del ritiro. In caso di anomalia, genera anche messaggi di errore e le relative descrizioni.

Crea ritiro

Utilizzate questo endpoint per creare una richiesta di ritiro per un collo da ritirare.

Le informazioni di input chiave associate a questa richiesta sono le seguenti.

  • Codice cliente FedEx intestatario della fattura di ritiro
  • Dettagli sull'origine (indirizzo, luogo e tipo di indirizzo di ritiro, ad esempio account/mittente/altro).
  • Vettore di trasporto FedEx per il ritiro (Express/Ground)
  • Dettagli dell'indirizzo dell'account associato.

L'esito positivo della richiesta di ritiro genera un numero di conferma per il ritiro, una notifica di ritiro e il codice del luogo di ritiro programmato. In caso di anomalia, genera anche messaggi di errore e le relative descrizioni.

Annulla ritiro

Questa richiesta serve ad annullare eventuali richieste di ritiro già programmate.

Le informazioni di input chiave associate a questa richiesta sono le seguenti.

  • Codice di conferma del ritiro (si ottiene nell'ambito della richiesta di ritiro)
  • Vettore di trasporto FedEx per il ritiro (Express/Ground)
  • Data programmata (data di ritiro della spedizione)
  • Luogo (filiale FedEx Express responsabile dell'elaborazione della richiesta di ritiro)

In caso di esito positivo dell'annullamento del ritiro, verrà fornito un numero di conferma e un messaggio di conferma dell'annullamento del ritiro. In caso di anomalia, genera anche messaggi di errore e le relative descrizioni.

Nota: per annullare un ritiro programmato sono necessari il numero di conferma del ritiro e il codice della sede corrispondente (solo per FDXE). Il numero di conferma di ritiro e il codice della sede corrispondente (solo per FDXE) vengono comunicati dopo aver effettuato una richiesta di ritiro. Nel caso in cui si cerchi di annullare il ritiro dopo la partenza del corriere FedEx verso la sede di ritiro, sarà inviata una notifica di errore

Regole aziendali 

  • Per richiedere un ritiro per un Paese diverso, includete l'elemento Paese con il codice Paese appropriato in cui volete che FedEx ritiri la spedizione.
  • Se la richiesta di spedizione va a buon fine, FedEx genera un numero di conferma di spedizione. Il limite massimo per le richieste di spedizione è una al giorno, a meno che non si aggiungano colli che superano le dimensioni o il peso della richiesta originale.
  • Le richieste di spedizione possono non andare a buon fine se inserite una finestra temporale insufficiente tra il momento in cui il collo è pronto e la chiusura dell'attività. Se avete domande sui tempi di ritiro, contattate la FedEx Support Hotline locale.
  • L'API richiesta di ritiro supporta tipologie di peso come ″LB″ e ″KG″. L'unità di peso del collo e della merce deve essere la stessa, altrimenti ne deriva un errore.
  • Se necessitate di programmare un ritiro sia per colli FedEx Express (comprese spedizioni nazionali in Messico) che FedEx Ground, dovete programmare un ritiro per ciascuno dei vettori.
  • Se la località del ritiro si trova in una zona remota, preparate anticipatamente i colli per rispettare gli orari di ritiro in località remote.
  • Includete sempre l'orario massimo entro cui il collo può essere ritirato (o l'orario di chiusura della vostra azienda).
  • Per i colli FedEx Express in alcune località nel mondo è offerto il servizio di ritiro il sabato. Inoltre, presso molte filiali FedEx è possibile consegnare il proprio collo di sabato. Utilizzate l'endpoint relativo ai servizi delle filiali per ricevere un elenco delle filiali presso cui potete consegnare le vostre spedizioni di sabato.
  • Per i ritiri FedEx Ground e FedEx Express, potete richiedere un indirizzo di ritiro alternativo rispetto alla località di spedizione associata al vostro codice cliente FedEx.
  • Se desiderate un regolare servizio di ritiro FedEx Express o FedEx Ground, contattate il Referente Commerciale FedEx.
  • Potete annullare un ritiro FedEx Express o FedEx Ground solo se sussistono le seguenti condizioni.
    • L'orario di collo pronto non è già stato rispettato
    • Il corriere non è stato inviato

Ritiro API JSON

Pickup Request API (1.0.0)

Create Pickup

Use this endpoint to create a pickup request for a package.
Note: FedEx APIs do not support Cross-Origin Resource Sharing (CORS) mechanism.

header Parameters
x-customer-transaction-id
string
Example: 624deea6-b709-470c-8c39-4b5511281492

This element allows you to assign a unique identifier to your transaction. This element is also returned in the reply and helps you match the request to the reply.

content-type
required
string
Example: application/json

This is used to indicate the media type of the resource. The media type is a string sent along with the file indicating format of the file.

x-locale
string
Example: en_US

This indicates the combination of language code and country code. Click here to see Locales

authorization
required
string
Example: Bearer XXX

This indicates the authorization token for the input request.

Request Body schema: application/json
One of
  • Full_Schema_Create_Pickup
  • Create_Pickup_Ground
  • Create_Pickup_Express
  • MinimumSamplePayload-ExpressFreightPickup
associatedAccountNumber
required
object (AccountNumber)

This is the FedEx account number.
Example: Your account number

originDetail
required
object

The origin address if different than the one associated with the shipper account. This element value is required when the package is to be picked up from an address other than the shipper account address.

associatedAccountNumberType
string

This enumeration represents a kind of legacy account number from a FedEx operating entity for the account number associated to the pickup.
Valid values are: FEDEX_EXPRESS
FEDEX_GROUND

totalWeight
object

Specify The total weight of the packages for the pickup. Unit of measure is LB.

packageCount
integer <int32>

Specify the total number of packages for the pickup.
Example: 5

carrierCode
required
string
Enum: "FDXE" "FDXG"

Specify the four letter code of a FedEx operating company that meets your requirements.
Examples of FedEx Operating Comapnies are :

  • FDXE- FedEx Express
  • FDXG- FedEx Ground
accountAddressOfRecord
object

The city name, state or province code and the address classification associated with the customer account which requested the pickup.

remarks
string

Placeholder for any message to be passed to the FedEx pickup courier.
Note:Maximum length is 60 characters.
Example: Please ring bell at loading dock.

countryRelationships
string
Enum: "DOMESTIC" "INTERNATIONAL"

Describes the country relationship among the shipments being picked up. This element is not mandatory for this request, but when added, the mandatory values are DOMESTIC or INTERNATIONAL. Empty or incorrect values will result in to errors.

pickupType
string

Indicate the pickup type method by which the shipment to be tendered to FedEx.
Note: The value of this element does not specify dispatching the courier for package pickup.
Example: ON_CALL, PACKAGE_RETURN_PROGRAM, REGULAR_STOP
Click here for more information on Pickup Types.

trackingNumber
string

This is a Tracking number for FedEx packages used for tracking a single package or group of packages.
Example: 795803657326
Click here to see mock tracking numbers for FedEx Express and FedEx Ground.

commodityDescription
string

Description of the commodity being shipped.
Example:This field contains Commodity Description.
Click here to see Vague commodity descriptions

expressFreightDetail
object

Placeholder for Express Freight pickup details.

oversizePackageCount
integer <int32>

Specify the number of oversize packages that are tendered to FedEx Ground.

pickupNotificationDetail
object

This object allows user to request for pickup confirmation email. User can specify upto 5 email addresses.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Failure

503

Service Unavailable

post /pickup/v1/pickups

Sandbox Server

https://apis-sandbox.fedex.com/pickup/v1/pickups

Production Server

https://apis.fedex.com/pickup/v1/pickups

Request samples

Content type
application/json
Example
Copy
Expand all Collapse all
{
  • "associatedAccountNumber":
    {
    },
  • "originDetail":
    {
    },
  • "associatedAccountNumberType": "FEDEX_GROUND",
  • "totalWeight":
    {
    },
  • "packageCount": 5,
  • "carrierCode": "FDXE",
  • "accountAddressOfRecord":
    {
    },
  • "remarks": "Please ring bell at loading dock.",
  • "countryRelationships": "DOMESTIC",
  • "pickupType": "ON_CALL, PACKAGE_RETURN_PROGRAM, REGULAR_STOP.",
  • "trackingNumber": "795803657326",
  • "commodityDescription": "This field contains CommodityDescription",
  • "expressFreightDetail":
    {
    },
  • "oversizePackageCount": 2,
  • "pickupNotificationDetail":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "transactionId": "624deea6-b709-470c-8c39-4b5511281492",
  • "customerTransactionId": "AnyCo_order123456789",
  • "output":
    {
    }
}

Check Pickup Availability

Use this endpoint to check the availability of a pickup service.
Note: FedEx APIs do not support Cross-Origin Resource Sharing (CORS) mechanism.

header Parameters
x-customer-transaction-id
string
Example: 624deea6-b709-470c-8c39-4b5511281492

This element allows you to assign a unique identifier to your transaction. This element is also returned in the reply and helps you match the request to the reply.

content-type
required
string
Example: application/json

This is used to indicate the media type of the resource. The media type is a string sent along with the file indicating format of the file.

x-locale
string
Example: en_US

This indicates the combination of language code and country code. Click here to see Locales

authorization
required
string
Example: Bearer XXX

This indicates the authorization token for the input request.

Request Body schema: application/json
One of
  • Full_Schema_Pickup_Availability
  • Check_Pickup_Availability_Domestic_Express
  • Check_Pickup_Availability_Domestic_Ground
  • Check_Pickup_Availability_International_Express
pickupAddress
required
object (PickupAddress)

Specify the address for which pickup availability inquiry has been made.

dispatchDate
string

Specify the date the package is to be picked up. The format is YYYY-MM-DD. If left blank, the system considers current date as dispatch date.
Example: 2020-01-01

packageReadyTime
string

Specify the time that the package will be ready for pickup. The time format is HH:MM:SS and it refers to the local timezone. The driver should pick up the package/shipment by the given pickup time.
Example: 15:00:00

customerCloseTime
string

Specify the latest time the driver gets access to pick up the package. The time format is in HH:MM:SS and it refers to the local timezone. The driver should pick up the package by the given pickup time.
Example: 18:00:00

pickupType
string
Enum: "ON_CALL" "TAG"

Indicate the pickup type method by which the shipment to be tendered to FedEx.
Note: The value of this element does not specify dispatching the courier for package pickup.
Click here for more information on Pickup Types.

pickupRequestType
required
Array of strings
Items Enum: "SAME_DAY" "FUTURE_DAY"

Specify pickup request type.

shipmentAttributes
object (ShipmentAttributes)

Specify the shipment details, such as service type, packaging type, weight and dimensions.

Note: serviceType is required for domestic or international pickup availabilities.

numberOfBusinessDays
integer <int32>

Specify number of business days to consider when checking availability.
For example if you are indicating pickupDate for a Saturday and you indicate 3, Saturday, Sunday and Monday will be considered.
Example: 3

packageDetails
Array of objects (RequestedPickupPackageDetail)

This object is used to specify the package details.

associatedAccountNumber
string

The associated account number, which will be invoiced for the pickup.
Example:613787364.

associatedAccountNumberType
string
Enum: "FEDEX_EXPRESS" "FEDEX_GROUND"

This represents a kind of legacy account number from a FedEx operating entity for the account number associated to the pickup.
Valid values are: FEDEX_EXPRESS
FEDEX_GROUND

carriers
required
Array of strings
Items Enum: "FDXE" "FDXG"

Specify the four letter code of a FedEx operating company thet meets your requirements.
Examples of FedEx Operating Companies are:

  • FDXE - FedEx Express
  • FDXG - FedEx Ground

countryRelationship
required
string
Enum: "DOMESTIC" "INTERNATIONAL"

Specify the country relationship among the shipments being picked up. Empty or incorrect values will result in to errors.

Note: shipmentAttributes/serviceType is required for domestic or international pickup availabilities.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Failure

503

Service Unavailable

post /pickup/v1/pickups/availabilities

Sandbox Server

https://apis-sandbox.fedex.com/pickup/v1/pickups/availabilities

Production Server

https://apis.fedex.com/pickup/v1/pickups/availabilities

Request samples

Content type
application/json
Example
Copy
Expand all Collapse all
{
  • "pickupAddress":
    {
    },
  • "dispatchDate": "2020-10-14",
  • "packageReadyTime": "15:30:00",
  • "customerCloseTime": "18:00:00",
  • "pickupType": "ON_CALL",
  • "pickupRequestType":
    [
    ],
  • "shipmentAttributes":
    {
    },
  • "numberOfBusinessDays": 1,
  • "packageDetails":
    [
    ],
  • "associatedAccountNumber": "613787364",
  • "associatedAccountNumberType": "FEDEX_EXPRESS",
  • "carriers":
    [
    ],
  • "countryRelationship": "INTERNATIONAL"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "transactionId": "624deea6-b709-470c-8c39-4b5511281492",
  • "customerTransactionId": "AnyCo_order123456789",
  • "output":
    {
    }
}

Cancel Pickup

Use this endpoint to cancel the already scheduled pickup request.
Note: A failure notification will be sent if you attempt to cancel a pickup after the FedEx courier has been dispatched to the pickup location.
Note: FedEx APIs do not support Cross-Origin Resource Sharing (CORS) mechanism.

header Parameters
x-customer-transaction-id
string
Example: 624deea6-b709-470c-8c39-4b5511281492

This element allows you to assign a unique identifier to your transaction. This element is also returned in the reply and helps you match the request to the reply.

content-type
required
string
Example: application/json

This is used to indicate the media type of the resource. The media type is a string sent along with the file indicating format of the file.

x-locale
string
Example: en_US

This indicates the combination of language code and country code. Click here to see Locales

authorization
required
string
Example: Bearer XXX

This indicates the authorization token for the input request.

Request Body schema: application/json
One of
  • Full_Schema_Cancel_Pickup
  • Cancel_Pickup_Ground
  • Cancel_Pickup_Express
associatedAccountNumber
required
object (AccountNumber)

This is the FedEx account number.
Example: Your account number

pickupConfirmationCode
required
string

The confirmation number provided by FedEx to the customer when the pickup was scheduled or requested.
Example: 7

remarks
string

Placeholder for any message to be passed to the FedEx pickup courier.
Note:Maximum length is 60 characters.
Example: Please ring bell at loading dock.

carrierCode
string
Enum: "FDXE" "FDXG"

This is a placeholder to provide the FedEx operating company (transportation) code used for package delivery. Required for FedEx Ground.
Optional for FedEx Express.
The Default is FedEx Express i.e. FDXE.

accountAddressOfRecord
object (AccountAddressOfRecord)

Address details for the associated pickup account. Indicates if the address is residential. Specifies the city name, country code, streetline number, postal code, address verification Identifier, and state or province code.

scheduledDate
required
string

Indicates the date the pickup dispatch occurs.
Format YYYY-MM-DD
Example: 2019-10-15

location
string

The FedEx Express location identifier responsible for processing the pickup request. This is returned in the CreatePickup response and is required to cancel a FedEx Express dispatch.Required only for FedEx Express Pickups. Optional for FedEx Ground. Example: LOSA

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Failure

503

Service Unavailable

put /pickup/v1/pickups/cancel

Sandbox Server

https://apis-sandbox.fedex.com/pickup/v1/pickups/cancel

Production Server

https://apis.fedex.com/pickup/v1/pickups/cancel

Request samples

Content type
application/json
Example
Copy
Expand all Collapse all
{
  • "associatedAccountNumber":
    {
    },
  • "pickupConfirmationCode": "7",
  • "remarks": "Please ring bell at loading dock.",
  • "carrierCode": "FDXE",
  • "accountAddressOfRecord":
    {
    },
  • "scheduledDate": "2019-10-15",
  • "location": "LOSA"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "transactionId": "624deea6-b709-470c-8c39-4b5511281492",
  • "customerTransactionId": "AnyCo_order123456789",
  • "output":
    {
    }
}
CLOSE

Response

Copy