Premium domains carry special transfer pricing because of their popularity and value. When a premium domain transfer to Enom fails with an invalid premium price error, you must retrieve the correct price through Application Programming Interface (API) commands before the order can proceed. This article explains the error and walks you through the two API commands needed to resolve it.
Resolving the invalid premium price error
This error appears when you transfer a domain to Enom and the premium domain is missing its price, so the order cannot proceed.
Transfer error Canceled - Invalid premium priceTo resolve the issue, run two API commands: the first retrieves the price, and the second creates a new order with that price.
Note: Fill in the required fields and remove their brackets, for example {transfer} becomes transfer.
Step 1: Retrieve the premium price
- Fill in the required fields and run the PE_GetPremiumPricingcommand.
https://resellertest.enom.com/interface.asp?command=PE_GetPremiumPricing&uid=YourAccountID&pw=YourApiToken&sldX={Required}&tldX={Required}&qnameX={Required}&producttype=Transfer&responsetype={Optional}- Locate the price in the output.
230.00Step 2: Create the transfer order with the retrieved price
- Enter the price into the TP_CreateOrder command to create a new transfer order.
https://resellertest.enom.com/interface.asp?command=TP_CreateOrder&uid={Required}&pw={Required}&OrderType=transfer&DomainCount={Required}&SLD1={Required}&TLD1={Required}&AuthInfo1={Required}&CustomerSuppliedPrice=230.00&responsetype={Optional}API command reference: PE_GetPremiumPricing
To retrieve premium pricing, run the following API command. The login ID and password must be correct for the command to run.
https://resellertest.enom.com/interface.asp?command=PE_GetPremiumPricing&uid=YourAccountID&pw=YourApiToken&sldX={Required}&tldX={Required}&qnameX={Required}&producttype={Required}&responsetype={Optional}| Input Parameter | Type | Status | Description |
| command | string | Required | PE_GetPremiumPricing |
| uid | string | Required | Your Account ID |
| pw | string | Required | Your API Token |
| sldX | string | Required | Second level domain. X=1 to Domain Count |
| tldX | string | Required | Top level domain X=1 to DomainCount. |
| qnameX | string | Required | Queue name |
| producttype | string | Required | Product type. Permitted values are: Register, Renew, RGP, Extended RGP, Transfer |
| responsetype | string | Optional | Format of response. Permitted values are "Text" (default), "HTML", or XML |
Returned parameters and values
The default response format is plain text. To receive the response in HTML or XML format, send ResponseType=HTML or ResponseType=XML in your request.
Check the return parameter ErrCount. If it is greater than 0, the transaction failed. The parameter Err(ErrCount) can be presented to the client.
| Output Parameter | Type | Description |
| Domain | string | Domain name queried |
| IsPremium | string | Is premium domain? Expected values are: Yes, No |
| IsEAP | string | Is EAP domain? Expected values are: Yes, No |
| ICANNFees | float | ICANN fees |
| Price | float | Premium domain price. 0.00 value will be returned for a non-premium domain or if the domain is not eligible in a specified queue |
| RegistrationFee | float | Registration fee |
| EAPFee | float | EAP fee |
| Command | string | Name of command executed |
| ErrCount | int | The number of errors, if any, occurred. If greater than 0, check the Err (1 to ErrCount) values |
| ErrX | string | Error messages explaining the failure. These can be presented as is back to the client. |
| Done | string | "True" indicates this entire response has reached you successfully |
Example output
XML string query:
https://resellertest.enom.com/interface.asp?command=PE_GetPremiumPricing&uid=resellid&pw=resellpw&responsetype=xml&sld1=bike48n25&tld1=bike&qname1=sunrise&sld2=bike48n01&tld2=ninja&qname2=sunrise&producttype=registerXML response:
bike48n25.bike
true
false
230.00
230.00
0.00
bike48n01.ninja
false
false
0.18
0.00
0.00
0.00
PE_GETPREMIUMPRICING
eng
0
0
1
10
RESELLERTEST
eNom
+0.00
0.672
true
00000000-0000-0000-0000-000000000000
11/25/2013 5:31:15 PMAPI command reference: TP_CreateOrder
This command creates an order to transfer domains from another registrar to Enom. The command string must meet the following requirements:
- The login ID and password must be valid.
- All domain names in the order must be in top-level domains supported by this registrar.
- To transfer EPP names, the query must include the authorization key from the registrar.
https://resellertest.enom.com/interface.asp?command=TP_CreateOrder&uid=(Required)&pw=(Required)&OrderType=transfer&DomainCount=(Required)&SLD1=(Required)&TLD1=(Required)&AuthInfo1=(Required)&CustomerSuppliedPrice=(Price)&responsetype=(Optional)Input parameters and values
| Input Parameter | Type | Status | Description |
| command | string | Required | TP_CreateOrder |
| uid | string | Required | Your Account ID |
| pw | string | Required | Your API Token |
| PreConfig | string | Optional; default is 0 | Set PreConfig=1 to create, but not send, the order at this time. Using PreConfig=1 allows you to use TP_UpdateOrderDetail to modify DomainPassword, Lock, Renew, contacts, and extended attributes before submitting the order. When you are ready to submit the order, call TP_SubmitOrder. |
| OrderType | string | Required | Permitted values are Fax or Autoverification |
| CustomerSuppliedPrice | int | Required if transferring a premium domain | For premium domain(s), the exact price for this domain must be declared in this parameter. Use the PE_GetPremiumPricing command to retrieve the price. |
| IncludeIDP | int | Optional | Includes ID Protect on domain transfers for TLDs that support ID Protect. Permitted values are 1 = include ID Protect, and 0 = Do not include ID Protect |
| IDPPrice | int | Optional; required if IncludeIDP = 1 | Price of ID Protect (the price can be retrieved from the appropriate price command) |
| DomainCount | int | Required | The number of domain names to be submitted on the order. This number must match the actual number of names submitted. |
| SLDX X=1 to DomainCount | string | Required | Second-level domain name (for example, enom in enom.com) |
| TLDX | string | Required | Top-level domain name (extension) |
| AuthInfoX | string | Required | EPP TLDs Current ("losing") registrar's authorization key |
Example output
https://resellertest.enom.com/interface.asp?
command=TP_CreateOrder&uid=resellid&pw=resellpw
&orderType=AutoVerification&sld1=resellerdocs2
&tld1=net&AuthInfo1=ros8enQi&sld2=resellerdocs3&tld2=info
&AuthInfo2=pkv7ihRb& domaincount=2&responsetype=xmlXML response:
445413
7/29/2002 5:19:29 PM
1
Auto Verification
4
Processing
17.90
1
301770
resellerdocs2
net
9
Awaiting auto verification of transfer request
8.95
0
301771
resellerdocs3
info
9
Awaiting auto verification of transfer request
8.95
0
2
True
TP_CREATEORDER
0
Dev Workstation
enom
trueNext steps
Questions? Contact Enom Support.
How helpful was this article?
Thanks for your feedback!
Do you still need help? If so please submit a request here.