Renewals, Upgrades, and Downgrades

Before processing a membership lifecycle action other than a new purchase (MembershipPurchase), check the possible lifecycle actions using Membership Eligible Options.


Shopping Cart

Create a shopping cart and get the new id. For more information on how to use the cart see Shopping Cart

POST https://sand10-buy.acmeticketing.net/v2/b2c/carts/


Add the membership information to the cart. The itemType must correspond to the lifecycle action being performed. Valid itemTypes are:

  • MembershipPurchase
  • MembershipRenewal
  • MembershipRenewalUpgrade
  • MembershipRenewalDowngrade
  • MembershipUpgrade
  • MembershipDowngrade
  • MembershipPostTermRenewal
  • MembershipPostTermRenewalUpgrade
  • MembershipPostTermRenewalDowngrade
  • MembershipRejoin
  • MembershipRejoinUpgrade
  • MembershipRejoinDowngrade


Things of note:

  • The level, offering, and price point ids should correspond to the destination membership. 
  • The membership id must be included for all lifecycle actions other than MembershipPurchase and should correspond to the source membership.
PUT https://sand10-buy.acmeticketing.net/v2/b2c/carts/[shoppingCartId]

{
    "id": [shoppingCartId],
    "items":[
        {
            "quantity": 1,
            "itemType": "MembershipRenewal",
            "membershipInfo":{
                "membershipCategoryId":[levelId],
                "membershipOfferingId":[offeringId],
                "pricePointId":[pricePointId],
                "membershipId": [membershipId],
                "membershipCards":[{
                    "cardType": "primary",
                    "city": "San Jose",
                    "country": "United States",
                    "email": "support@acmeticketing.com",
                    "firstName": "Pascal",
                    "lastName": "de Belleville",
                    "phoneNumber": "1234567890",
                    "state": "CA",
                    "streetAddress1": "1 Almaden Blvd",
                    "streetAddress2": "Suite 310",
                    "zipCode": "00000"
                }],
                "isGift": false,
                "isAutorenew": false
            }
        }
    ]
}


Checkout

Provide payment information and purchase the items in the cart. Lifecycle actions that result in a negative payment (ie downgrading from a $50 to $40 membership) are not supported. You can check whether a lifecycle will result in a negative payment using Membership Checkout Validation.


Lifecycle actions into an Auto Renew membership must have credit card information in order to generate a valid subscription, even in the case of no payment due (ie upgrade without any price difference or apply a 100% off coupon). Failure to provide payment information will result in invalid subscriptions without a payment method, which subsequently will not automatically renew.


POST https://sand10-buy.acmeticketing.net/v2/b2c/checkout

{
    "billingAddress1": "160 Forest Ave",
    "billingCity": "Palo Alto",
    "billingCountry": "United States",
    "billingEmail": "support@acmeticketing.com",
    "billingFirstName": "Pascal",
    "billingLastName": "de Belleville",
    "billingPhoneNumber": "1234567890",
    "billingState": "CA",
    "billingZipCode": "99999",
    "cvc": "123",
    "expDate": "0321",
    "manualEntryCardNumber": "4242424242424242",
    "shoppingCartId": "[shoppingCartId]"
}

Managing Cardholders/Customers

Important: When selling an Auto Renew membership, an email address must be provided for the primary cardholder. This is required in order to send a reminder email prior to processing the automatic renewal.


To persist existing cardholder customer information across lifecycle actions, include the existing customer data in the shopping cart along with the constituent import id (customer import id). You can find the constituent import id on any membership card that has sufficient customer data (first name and last name, and email or phone number or zip code).

PUT https://sand10-buy.acmeticketing.net/v2/b2c/carts/[shoppingCartId]

{
    "id": [shoppingCartId],
    "items":[
        {
            "quantity": 1,
            "itemType": "MembershipRenewal",
            "membershipInfo":{
                "membershipCategoryId":[levelId],
                "membershipOfferingId":[offeringId],
                "pricePointId":[pricePointId],
                "membershipId": [membershipId],
                "membershipCards":[{
                    "constituentImportId":[constituentImportId],
                    "cardType": "primary",
                    "city": "San Jose",
                    "country": "United States",
                    "email": "support@acmeticketing.com",
                    "firstName": "Pascal",
                    "lastName": "de Belleville",
                    "phoneNumber": "1234567890",
                    "state": "CA",
                    "streetAddress1": "1 Almaden Blvd",
                    "streetAddress2": "Suite 310",
                    "zipCode": "00000"
                }],
                "isGift":false
            }
        }
    ]
}


To update existing cardholder customer information across lifecycle actions, update the customer data in the shopping cart, but use the existing constituent import id. 

PUT https://sand10-buy.acmeticketing.net/v2/b2c/carts/[shoppingCartId]

{
    "id": [shoppingCartId],
    "items":[
        {
            "quantity": 1,
            "itemType": "MembershipRenewal",
            "membershipInfo":{
                "membershipCategoryId":[levelId],
                "membershipOfferingId":[offeringId],
                "pricePointId":[pricePointId],
                "membershipId": [membershipId],
                "membershipCards":[{
                    "constituentImportId":[constituentImportId],
                    "cardType": "primary",
                    "city": "San Francisco",
                    "country": "United States",
                    "email": "support-new@acmeticketing.com",
                    "firstName": "Pascal",
                    "lastName": "de Belleville",
                    "phoneNumber": "0987654321",
                    "state": "CA",
                    "streetAddress1": "10 Mission St",
                    "streetAddress2": "Suite 1600",
                    "zipCode": "99999"
                }],
                "isGift":false
            }
        }
    ]
}


To add or replace cardholder customer information, add or update the customer data in the shopping cart, but do not include the constituent import id.

PUT https://sand10-buy.acmeticketing.net/v2/b2c/carts/[shoppingCartId]

{
    "id": [shoppingCartId],
    "items":[
        {
            "quantity": 1,
            "itemType": "MembershipRenewal",
            "membershipInfo":{
                "membershipCategoryId":[levelId],
                "membershipOfferingId":[offeringId],
                "pricePointId":[pricePointId],
                "membershipId": [membershipId],
                "membershipCards":[{
                    "cardType": "primary",
                    "city": "San Francisco",
                    "country": "United States",
                    "email": "support-new@acmeticketing.com",
                    "firstName": "Pascal",
                    "lastName": "de Belleville",
                    "phoneNumber": "0987654321",
                    "state": "CA",
                    "streetAddress1": "10 Mission St",
                    "streetAddress2": "Suite 1600",
                    "zipCode": "99999"
                },{
                    "cardType": "secondary",
                    "city": "San Mateo",
                    "country": "United States",
                    "email": "support-three@acmeticketing.com",
                    "firstName": "Arya",
                    "lastName": "Starck",
                    "phoneNumber": "1111111111",
                    "state": "CA",
                    "streetAddress1": "10 Some Other St",
                    "streetAddress2": "Suite 777",
                    "zipCode": "95432"
                }],
                "isGift":false
            }
        }
    ]
}


If a membership has primary and secondary cardholders, you can swap a primary with a secondary cardholder by changing the card type flag. Note that a membership can only have one primary cardholder and the primary cardholder must have a first name and last name, and phone number or email or zip code. In the case of an Auto Renew membership, the primary cardholder can only be changed during a lifecycle action.