draft-ietf-regext-epp-fees-07.txt   draft-ietf-regext-epp-fees-08.txt 
Registration Protocols Extensions R. Carney Registration Protocols Extensions R. Carney
Internet-Draft GoDaddy Inc. Internet-Draft GoDaddy Inc.
Intended status: Standards Track G. Brown Intended status: Standards Track G. Brown
Expires: March 25, 2018 CentralNic Group plc Expires: April 4, 2018 CentralNic Group plc
J. Frakes J. Frakes
September 21, 2017 October 1, 2017
Registry Fee Extension for the Extensible Provisioning Protocol (EPP) Registry Fee Extension for the Extensible Provisioning Protocol (EPP)
draft-ietf-regext-epp-fees-07 draft-ietf-regext-epp-fees-08
Abstract Abstract
This document describes an Extensible Provisioning Protocol (EPP) This document describes an Extensible Provisioning Protocol (EPP)
extension mapping for registry fees. extension mapping for registry fees.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
skipping to change at page 1, line 33 skipping to change at page 1, line 33
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on March 25, 2018. This Internet-Draft will expire on April 4, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 14 skipping to change at page 2, line 14
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Conventions Used in This Document . . . . . . . . . . . . 3 1.1. Conventions Used in This Document . . . . . . . . . . . . 3
2. Migrating to Newer Versions of This Extension . . . . . . . . 4 2. Migrating to Newer Versions of This Extension . . . . . . . . 4
3. Extension Elements . . . . . . . . . . . . . . . . . . . . . 4 3. Extension Elements . . . . . . . . . . . . . . . . . . . . . 4
3.1. Client Commands . . . . . . . . . . . . . . . . . . . . . 4 3.1. Client Commands . . . . . . . . . . . . . . . . . . . . . 4
3.2. Currency Codes . . . . . . . . . . . . . . . . . . . . . 5 3.2. Currency Codes . . . . . . . . . . . . . . . . . . . . . 5
3.3. Validity Periods . . . . . . . . . . . . . . . . . . . . 5 3.3. Validity Periods . . . . . . . . . . . . . . . . . . . . 5
3.4. Fees and Credits . . . . . . . . . . . . . . . . . . . . 5 3.4. Fees and Credits . . . . . . . . . . . . . . . . . . . . 6
3.4.1. Refunds . . . . . . . . . . . . . . . . . . . . . . . 6 3.4.1. Refunds . . . . . . . . . . . . . . . . . . . . . . . 6
3.4.2. Grace Periods . . . . . . . . . . . . . . . . . . . . 7 3.4.2. Grace Periods . . . . . . . . . . . . . . . . . . . . 7
3.4.3. Correlation between Refundability and Grace Periods . 7 3.4.3. Correlation between Refundability and Grace Periods . 7
3.4.4. Applicability . . . . . . . . . . . . . . . . . . . . 7 3.4.4. Applicability . . . . . . . . . . . . . . . . . . . . 7
3.5. Account Balance . . . . . . . . . . . . . . . . . . . . . 7 3.5. Account Balance . . . . . . . . . . . . . . . . . . . . . 7
3.6. Credit Limit . . . . . . . . . . . . . . . . . . . . . . 8 3.6. Credit Limit . . . . . . . . . . . . . . . . . . . . . . 8
3.7. Classification of Objects . . . . . . . . . . . . . . . . 8 3.7. Classification of Objects . . . . . . . . . . . . . . . . 8
3.8. Phase and Subphase Attributes . . . . . . . . . . . . . . 8 3.8. Phase and Subphase Attributes . . . . . . . . . . . . . . 8
3.9. Reason . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.9. Reason . . . . . . . . . . . . . . . . . . . . . . . . . 9
4. Server Handling of Fee Information . . . . . . . . . . . . . 10 4. Server Handling of Fee Information . . . . . . . . . . . . . 10
skipping to change at page 2, line 46 skipping to change at page 2, line 46
6. Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . . 26 6. Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . . 26
6.1. Fee Extension Schema . . . . . . . . . . . . . . . . . . 26 6.1. Fee Extension Schema . . . . . . . . . . . . . . . . . . 26
7. Security Considerations . . . . . . . . . . . . . . . . . . . 30 7. Security Considerations . . . . . . . . . . . . . . . . . . . 30
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30
8.1. XML Namespace . . . . . . . . . . . . . . . . . . . . . . 30 8.1. XML Namespace . . . . . . . . . . . . . . . . . . . . . . 30
8.2. EPP Extension Registry . . . . . . . . . . . . . . . . . 31 8.2. EPP Extension Registry . . . . . . . . . . . . . . . . . 31
9. Implemntation Status . . . . . . . . . . . . . . . . . . . . 31 9. Implemntation Status . . . . . . . . . . . . . . . . . . . . 31
9.1. RegistryEngine EPP Service . . . . . . . . . . . . . . . 32 9.1. RegistryEngine EPP Service . . . . . . . . . . . . . . . 32
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 32 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 32
11. Change History . . . . . . . . . . . . . . . . . . . . . . . 33 11. Change History . . . . . . . . . . . . . . . . . . . . . . . 33
11.1. Change from 06 to 07 . . . . . . . . . . . . . . . . . . 33 11.1. Change from 07 to 08 . . . . . . . . . . . . . . . . . . 33
11.2. Change from 05 to 06 . . . . . . . . . . . . . . . . . . 33 11.2. Change from 06 to 07 . . . . . . . . . . . . . . . . . . 33
11.3. Change from 04 to 05 . . . . . . . . . . . . . . . . . . 33 11.3. Change from 05 to 06 . . . . . . . . . . . . . . . . . . 33
11.4. Change from 03 to 04 . . . . . . . . . . . . . . . . . . 33 11.4. Change from 04 to 05 . . . . . . . . . . . . . . . . . . 33
11.5. Change from 02 to 03 . . . . . . . . . . . . . . . . . . 33 11.5. Change from 03 to 04 . . . . . . . . . . . . . . . . . . 33
11.6. Change from 01 to 02 . . . . . . . . . . . . . . . . . . 34 11.6. Change from 02 to 03 . . . . . . . . . . . . . . . . . . 33
11.7. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 34 11.7. Change from 01 to 02 . . . . . . . . . . . . . . . . . . 34
11.8. Change from draft-brown-00 to draft-ietf-regext-fees-00 34 11.8. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 34
11.9. Change from draft-brown-00 to draft-ietf-regext-fees-00 34
12. Normative References . . . . . . . . . . . . . . . . . . . . 34 12. Normative References . . . . . . . . . . . . . . . . . . . . 34
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 35 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 35
1. Introduction 1. Introduction
Historically, domain name registries have applied a simple fee Historically, domain name registries have applied a simple fee
structure for billable transactions, namely a basic unit price structure for billable transactions, namely a basic unit price
applied to domain <create>, <renew>, <transfer> and RGP [RFC3915] applied to domain <create>, <renew>, <transfer> and RGP [RFC3915]
restore commands. Given the relatively small number of EPP servers restore commands. Given the relatively small number of EPP servers
to which EPP clients have been required to connect, it has generally to which EPP clients have been required to connect, it has generally
skipping to change at page 9, line 16 skipping to change at page 9, line 20
the server has only one active phase/subphase combination the server the server has only one active phase/subphase combination the server
MUST return data (including the phase/subphase attribute(s)) of the MUST return data (including the phase/subphase attribute(s)) of the
currently active phase/subphase. currently active phase/subphase.
If the client <fee:command> contains no phase/subphase attributes and If the client <fee:command> contains no phase/subphase attributes and
the server has more than one active phase/subphase combination the the server has more than one active phase/subphase combination the
server MUST respond with a 2003 "Required parameter missing" error. server MUST respond with a 2003 "Required parameter missing" error.
If the client <fee:command> contains no phase/subphase attributes and If the client <fee:command> contains no phase/subphase attributes and
the server is currently in a "quiet period" (e.g. not accepting the server is currently in a "quiet period" (e.g. not accepting
registrations or applications) the server MUST return data consistent registrations or applications)the server MUST return data consistent
with the "open" general availability phase (the default phase) and with the default general availability phase (e.g. "open" or "claims")
the server MUST return "open" as the phase. including the appropriate phase/subphase attribute(s).
If the client <fee:command> contains a phase attribute with no If the client <fee:command> contains a phase attribute with no
subphase and the server has only one active subphase (or no subphase) subphase and the server has only one active subphase (or no subphase)
of this phase, the server MUST return data (including the phase/ of this phase, the server MUST return data (including the phase/
subphase attribute(s)) of the provided phase and currently active subphase attribute(s)) of the provided phase and currently active
subphase. subphase.
If the client <fee:command> contains a phase attribute with no If the client <fee:command> contains a phase attribute with no
subphase and the server has more than one active subphase combination subphase and the server has more than one active subphase combination
of this phase, the server MUST respond with a 2003 "Required of this phase, the server MUST respond with a 2003 "Required
skipping to change at page 12, line 10 skipping to change at page 12, line 10
element and a <fee:cd> for each element referenced in the client element and a <fee:cd> for each element referenced in the client
<check> command. <check> command.
Each <fee:cd> element MUST contain the following child elements: Each <fee:cd> element MUST contain the following child elements:
o A <fee:objID> element, which MUST match an element referenced in o A <fee:objID> element, which MUST match an element referenced in
the client <check> command. the client <check> command.
o A <fee:command> element matching each <fee:command> (unless the o A <fee:command> element matching each <fee:command> (unless the
"avail" attribute of the <fee:cd> if false) that appeared in the "avail" attribute of the <fee:cd> if false) that appeared in the
corresponding <fee:check> of the client command. This element MAY corresponding <fee:check> of the client command. This element MAY
have the OPTIONAL "phase" and "subphase" attributes, which MUST have the OPTIONAL "phase" and "subphase" attributes, which SHOULD
match the same attributes in the corresponding <fee:command> match the same attributes in the corresponding <fee:command>
element of the client command if sent by the client. element of the client command if sent by the client.
The <fee:cd> element also has an OPTIONAL "avail" attribute which is The <fee:cd> element also has an OPTIONAL "avail" attribute which is
a boolean. If the value of this attribute evaluates to false, this a boolean. If the value of this attribute evaluates to false, this
indicates that the server cannot calculate the relevant fees, because indicates that the server cannot calculate the relevant fees, because
the object, command, currency, period, class or some combination is the object, command, currency, period, class or some combination is
invalid per server policy. If "avail" is false then the <fee:cd> invalid per server policy. If "avail" is false then the <fee:cd>
element MUST contain a <fee:reason> element (as described in element MUST contain a <fee:reason> element (as described in
Section 3.9) and the server MAY eliminate some or all of the Section 3.9) and the server MAY eliminate some or all of the
skipping to change at page 33, line 7 skipping to change at page 33, line 7
o Seth Goldman of Google o Seth Goldman of Google
o Klaus Malorny and Michael Bauland of Knipp o Klaus Malorny and Michael Bauland of Knipp
o Jody Kolker, Joe Snitker and Kevin Allendorf of Go Daddy o Jody Kolker, Joe Snitker and Kevin Allendorf of Go Daddy
o Michael Holloway of Com Laude o Michael Holloway of Com Laude
o Santosh Kalsangrah of Impetus Infotech o Santosh Kalsangrah of Impetus Infotech
o Alex Mayrhofer of Nic.at o Alex Mayrhofer of Nic.at
o Thomas Corte of Knipp Medien und Kommunikation GmbH o Thomas Corte of Knipp Medien und Kommunikation GmbH
11. Change History 11. Change History
11.1. Change from 06 to 07 11.1. Change from 07 to 08
Updated section 3.8 and 5.1.1 to provide clarity on server processing
and response of various scenarios (i.e. "quiet" period processing).
11.2. Change from 06 to 07
Updated section 3.8 and 4.0 to provide clarity on server processing Updated section 3.8 and 4.0 to provide clarity on server processing
and response of various scenarios. and response of various scenarios.
11.2. Change from 05 to 06 11.3. Change from 05 to 06
Updated scheme to version 0.23 to allow the return of no Updated scheme to version 0.23 to allow the return of no
<fee:command> element(s) if an error situation occurs. Edited <fee:command> element(s) if an error situation occurs. Edited
section 3.8 extensively after input from interim meeting and REGEXT section 3.8 extensively after input from interim meeting and REGEXT
F2F meeting at IETF-99. Added normative reference for draft-ietf- F2F meeting at IETF-99. Added normative reference for draft-ietf-
eppext-launchphase. eppext-launchphase.
11.3. Change from 04 to 05 11.4. Change from 04 to 05
Updated scheme to version 0.21 to support the lang attribute for the Updated scheme to version 0.21 to support the lang attribute for the
reason element of the objectCDType and the commandType types as well reason element of the objectCDType and the commandType types as well
as to add the update command to the commandEnum type. Updated as to add the update command to the commandEnum type. Updated
section 3.1 to include language for the custom command. Added section 3.1 to include language for the custom command. Added
section 3.9 to provide a description of the <fee:reason> element. section 3.9 to provide a description of the <fee:reason> element.
Fixed typos and added clarification text on when client fee is less Fixed typos and added clarification text on when client fee is less
than server fee in section 4. Additionally, I added description than server fee in section 4. Additionally, I added description
pointers to appropriate Section 3 definitions for element clarity pointers to appropriate Section 3 definitions for element clarity
throughout the document. throughout the document.
11.4. Change from 03 to 04 11.5. Change from 03 to 04
Updated scheme to version 0.19 to correct typos and to replace the Updated scheme to version 0.19 to correct typos and to replace the
commandTypeValue type with the commandEnum type and customName commandTypeValue type with the commandEnum type and customName
attribute for stricter validation. Updated various text for grammar attribute for stricter validation. Updated various text for grammar
and clarity. Added text to section 4 clarifying the <check> response and clarity. Added text to section 4 clarifying the <check> response
when the client provided no fee extension but the server was when the client provided no fee extension but the server was
expecting the extension. expecting the extension.
11.5. Change from 02 to 03 11.6. Change from 02 to 03
Updated scheme to version 0.17 to simplify the check command syntax. Updated scheme to version 0.17 to simplify the check command syntax.
Moved fee avail to objectCDType to allow fast failing on error Moved fee avail to objectCDType to allow fast failing on error
situations. Removed the objectCheckType as it was no longer being situations. Removed the objectCheckType as it was no longer being
used. Updated examples to reflect these scheme changes. Added used. Updated examples to reflect these scheme changes. Added
language for server failing a <create> if the <fee:fee> passed by the language for server failing a <create> if the <fee:fee> passed by the
client is less than the server fee. client is less than the server fee.
11.6. Change from 01 to 02 11.7. Change from 01 to 02
Updated scheme to version 0.15 to fix errors in CommandType, Updated scheme to version 0.15 to fix errors in CommandType,
objectCDType, transformCommandType and transformResultType objectCDType, transformCommandType and transformResultType
definitions. definitions.
11.7. Change from 00 to 01 11.8. Change from 00 to 01
Added Roger Carney as author to finish draft. Moved Formal Syntax Added Roger Carney as author to finish draft. Moved Formal Syntax
section to main level numbering. Various grammar, typos, and section to main level numbering. Various grammar, typos, and
administrative edits for clarity. Removed default value for the administrative edits for clarity. Removed default value for the
"applied" attribute of <fee:fee> so that it can truly be optional. "applied" attribute of <fee:fee> so that it can truly be optional.
Added support for the <delete> command to return a <fee:fee> element Added support for the <delete> command to return a <fee:fee> element
as well. Modified default response on the <check> command for the as well. Modified default response on the <check> command for the
optional <fee:period> when it was not provided in the command, optional <fee:period> when it was not provided in the command,
leaving it to the server to provide the default period value. leaving it to the server to provide the default period value.
Extensive edits were done to the <check> command, the <check> Extensive edits were done to the <check> command, the <check>
response and to the fee extension schema (checkType, objectCheckType, response and to the fee extension schema (checkType, objectCheckType,
objectIdentifierType, objectCDType, commandType) to support objectIdentifierType, objectCDType, commandType) to support
requesting and returning multiple transformation fees in a single requesting and returning multiple transformation fees in a single
call. Added section on Phase/Subphase to provide more context on the call. Added section on Phase/Subphase to provide more context on the
uses. uses.
11.8. Change from draft-brown-00 to draft-ietf-regext-fees-00 11.9. Change from draft-brown-00 to draft-ietf-regext-fees-00
Updated to be REGEXT WG document. Updated to be REGEXT WG document.
12. Normative References 12. Normative References
[I-D.ietf-regext-launchphase] [I-D.ietf-regext-launchphase]
Gould, J., Tan, W., and G. Brown, "Launch Phase Mapping Gould, J., Tan, W., and G. Brown, "Launch Phase Mapping
for the Extensible Provisioning Protocol (EPP)", draft- for the Extensible Provisioning Protocol (EPP)", draft-
ietf-regext-launchphase-05 (work in progress), June 2017. ietf-regext-launchphase-05 (work in progress), June 2017.
 End of changes. 16 change blocks. 
25 lines changed or deleted 31 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/