
Developer Portal
Introduction
Account Registration API provides FedEx Compatible solution providers a secure and safe method to register customer's FedEx account number. It also generates child_Key and child_secret required to execute API transactions, only after validating the identity of the user through multiple authentication methods. This prevents any risk of unauthorized access to the shippers account and restricting fraudulent shipments originating from unauthorized meters.
Account Registration API Details
Account Registration API allows you to validate and authenticate shipper’s identity using two-factor authentication method. These authentication methods are required prior to registering an account and to authenticate and authorize your access to the FedEx resources.
You can specify the account number and valid address as specified in the FedEx systems for validation. If the specified address matches, then the account number is validated again using one of the below authentication methods.
- Invoice Validation – You can specify the details of an invoice that is not more than 90 days old and complete the registration. The provided invoice details will be matched with the existing invoice details in the FedEx systems.
- PIN Validation – You can request to receive a six-digit pin number, which will be sent to the phone number or email registered with the FedEx Account number. This six-digit pin number is delivered either via SMS or call or email and then, use the same pin to validate your account.
- Contact FedEx Tech Support – You can also contact FedEx tech support and answer certain pre-defined questions to validate your identity.
Note: Multiple unsuccessful attempts to get authenticated with any one of these validation methods will cause that respective validation method to be locked for your account for 24 hours. You can choose another available validation method in case you fail the existing validation method.
After successful validation, the API will generate and return the child_Key and child_secret. You must use this child_key along with the child_secret, client_Id, and client_secret to get the OAuth token, which then can be used as credentials for each subsequent API transaction.
Note: The client_Id and client_secret are generated when a project is created for you by the FedEx Channel Manager.
How Account Registration API Works
Address Validation
Use this endpoint to specify and register the account number and enter the billing address for validation.
The key input information associated with this request are:
- Account number
- Address
- Customer name
The successful response to this request will return an option to select the desired multi-factor authentication method for the next step of validation.
The response will also return the accountAuthToken which should be passed as one of the header parameters in the desired multi-factor authentication method for the next step of validation. An error message is displayed in case of failed response.
The same end point can also be used to generate the child_Key and child_secret if you choose to connect with FedEx tech support to validate your identity. After the successful validation, the response to this request will return the child_Key and child_secret to complete the account registration.
Invoice Validation
Use this endpoint to specify details of an invoice that is not more than 90 days old to authenticate your identity and complete the registration.
The key input information associated with this request are:
- Invoice Number
- Invoice Date
- Invoice Amount
- Currency
Note:
- The invoice used should not be more than 90 days old.
- The invoice amount must be specified only in the U.S. format with decimals. Example: 222.50.
- Invoice validation will fail, if you provide any incorrect value for Invoice date, Invoice number, amount & currency.
- Multiple unsuccessful validation attempts will cause this validation method to be locked for your account for 24 hours and you will be prompted to choose another validation method including contacting FedEx tech support.
The successful response to this request will return the child_Key and child_secret to complete the registration and to execute API transactions. An error message is displayed for a failed response.
Pin Generation
Use this endpoint to request for a six-digit secure code/pin as a next step to authenticate the account number.
The key input information associated with this request is:
- Option - Specify the secure code/pin delivery method: SMS, Call or Email
Note: The generated PIN will be valid for 30 minutes.
The successful response for this request will generate a six-digit secure code/pin that will be sent through the selected delivery method option (SMS, Call or Email) to the phone number or email registered with the FedEx Account number.
If the phone number or the email id is not found in your FedEx account, then you will be prompted to perform another available validation method.
Pin Validation
Use this endpoint to enter and validate the six-digit secure code /pin that was received from the Secure Code/Pin generation method to authenticate your identity and complete the registration.
The key input information associated with this request is:
- SecureCodePin
Note: Multiple unsuccessful validation attempts will cause this validation method to be locked for your account for 24 hours and you will be prompted to choose another validation method including contacting FedEx tech support.
The successful response to this request will return the child_Key and child_secret to complete the registration and to execute API transactions. An error message is displayed in case of a failed response.
Validation via contacting FedEx Tech Support
You can also call FedEx tech support, if you are unable to validate your FedEx account online. FedEx tech support team will require certain details to validate your identity and authorize your access. Once you pass the validation, FedEx tech support will provide a backend authorization. After this backend authorization is provided you should trigger the Address Validation endpoint again to generate the child_Key and child_secret to complete the account registration.
Note: The backend authorization provided by FedEx Tech Support will be available for 30 minutes only.
Predefined Test Data for Sandbox environment
You can use the below predefined test data to test PIN Validation and Invoice Validation methods while integrating to this API in the sandbox environment.
- For Invoice validation use the below details:
"invoiceDetail": {
"number": 234562278,
"currency": "USD",
"date": "YYYY-MM-DD",
"amount": 234.00
}
Note: You can use any valid date in the YYYY-MM-DD format which is not older than 90 days. - For PIN validation, use any one of the below given secureCodePin
- 234560, 234561, 234562, 234563, 234564, 234565, 234566, 234567, 234568, 234569
Business Rules
- You must authenticate the details through Address Validation endpoint at first. This end point generates the accountAuthToken which must be passed as one of the header parameters in other validation methods.
- accountAuthToken will be valid for 30 minutes. Hence you should complete the next level authentication within that timeline.
- All validation methods have certain unsuccessful attempts configured. Upon crossing this attempts threshold, the certain validation method will be locked for your account for 24 hours. You can still choose another validation methods including contacting FedEx tech support.
- Invoice validation will occur regardless the invoice belongs to master or child account in relation to the account being added or registered for shipping.
- The PIN will be delivered to the Phone/Email associated with the billing profile of the account number being validated.
- The PIN will be valid for 30 minutes. You can generate the PIN again upon expiry of this PIN.
- PIN will be delivered through voice mail only to US and Canada. Translations will be provided in English, Spanish and Canadian French.
Please log in to view this API's documentation.
Enter your user ID and password to log in