       url: @_getBundleItemAttachmentURL(itemIndex, bundleItemId, attachmentName)
       type: 'DELETE'
       data: JSON.stringify(dataRequest)
+
+  # Sends a request to add a discount coupon to the OrderForm.
+  addDiscountCoupon: (couponCode, expectedOrderFormSections = @_allOrderFormSections) =>
+    couponCodeRequest =
+      text: couponCode
+      expectedOrderFormSections: expectedOrderFormSections
+
+    @_updateOrderForm
+      url: @_getAddCouponURL()
+      data: JSON.stringify couponCodeRequest
+
+  # Sends a request to remove the discount coupon from the OrderForm.
+  removeDiscountCoupon: (expectedOrderFormSections) =>
+    @addDiscountCoupon('', expectedOrderFormSections)
+
+  # Sends a request to remove the gift registry for the current OrderForm.
+  removeGiftRegistry: (expectedFormSections = @_allOrderFormSections) =>
+    checkoutRequest = { expectedOrderFormSections: expectedFormSections }
+    @_updateOrderForm
+      url: @_getRemoveGiftRegistryURL()
+      data: JSON.stringify(checkoutRequest)
 
   # Sends a request to calculates shipping for the current OrderForm, given a COMPLETE address object.
   calculateShipping: (address) =>

      url: @_getRemoveOfferingsURL(itemIndex, offeringId)
      data: JSON.stringify(updateItemsRequest)

  # Sends a request to update the items in the OrderForm. Items that are omitted are not modified.
  updateItems: (items, expectedOrderFormSections = @_allOrderFormSections) =>
    updateItemsRequest =

  sendLocale: (locale='pt-BR') =>
    @sendAttachment('clientPreferencesData', {locale: locale}, [])

  # Sends a request to select an available gift
  updateSelectableGifts: (list, selectedGifts, expectedOrderFormSections = @_allOrderFormSections) =>
    updateSelectableGiftsRequest =
      id: list
      selectedGifts: selectedGifts
      expectedOrderFormSections: expectedOrderFormSections

    @_updateOrderForm
      url: @_getUpdateSelectableGifts(list)
      data: JSON.stringify(updateSelectableGiftsRequest)

  # Sends a request to add an offering, along with its info, to the OrderForm.
  addOfferingWithInfo: (offeringId, offeringInfo, itemIndex, expectedOrderFormSections = @_allOrderFormSections) =>
    updateItemsRequest =
