Memberships

A Membership represents a membership belonging to one or more Customers.

Schema

Attributes

  • The ID of the membership

  • The ID of the site this membership belongs to

  • The unique membership number of the lead member. This is always a 10 digit numeric string. Since this field only relates to the lead member, this is now deprecated. Instead, find the membership for the relevant customer in the members array.

  • Possible values are active, needs_dd_mandate, needs_attention, reserved, inactive, expired and upcoming

  • Where the membership was created

    Possible values are self_signup, app, import and unknown

  • Details about the payment method attached to this membership. This payment method is used to take payment on the monthly billing period. If a payment method hasn't been set up, this will be null.

  • The date which the membership starts

  • The date which the membership ends

  • The datetime which the membership was created

  • The basket ID which was used to purchase this membership, if applicable.

  • An external reference for this membership.

  • The date which the membership will next be billed

  • next_charge
    Nullable

    A summary of the next charge that's due for this membership.

    This property is only populated when the membership was retrieved using the `getCustomerMemberships endpoint.

  • A string describing what kind of action needs to take place

    Possible values are no_mandate, setup_unpaid, mandate_revoked, payment_failed, payment_disputed, payment_outstanding and site_id

""
listMemberships

List Memberships

This endpoint lists the Memberships which are associated to the provided site.

Query parameters

  • Filters memberships belonging to the specified customer

  • page
    Optional

    The page to retrieve results from

  • per_page
    Optional

    The number of results to return per page

Responses

  • 200

    The Memberships were successfully retrieved

GET/customers/memberships
200
example response
{
  "data": [
    {
      "id": "ce54f082-15be-77ed-56e7-682312618a0d",
      "customer": {
        "id": "4e209f92-0529-e141-a27b-6f451668c1e2",
        "first_name": "Jane",
        "last_name": "Doe",
        "full_name": "Jane Doe",
        "phone": "+447900000000",
        "has_password": true,
        "dob": "1948-01-21",
        "brand_id": "678b8844-c884-011d-3c66-271a33f3c79d",
        "site_id": "3a89f497-df30-853e-4d72-e72140d15445",
        "stripe_id": "cus_1234567890",
        "express_stripe_id": "cus_1234567890",
        "email": "janedoe@example.com",
        "labels": [
          {
            "id": "ec62542f-d1fe-53f2-100e-383f8f887234",
            "name": "VIP",
            "color": "ff6634"
          },
          {
            "id": "a8b6c91c-8456-0728-a6cb-ce0e59cc93ea",
            "name": "VIP",
            "color": "ff6634"
          },
          {
            "id": "6d4ba829-52c1-e962-07c8-fde48ec4e689",
            "name": "VIP",
            "color": "ff6634"
          }
        ],
        "preferred_locale": "en",
        "locked_at": "1927-04-11T17:41:01.0Z",
        "created_at": "1962-12-13T06:19:13.0Z",
        "updated_at": "1956-09-11T23:24:09.0Z",
        "deleted_at": "1899-11-08T11:16:26.0Z",
        "last_active_at": "1941-02-12T14:45:17.0Z",
        "email_verified_at": "1958-12-21T23:57:58.0Z",
        "last_check_in": {
          "checked_in_at": "1893-09-30T13:21:41.0Z",
          "method": "Scanned"
        },
        "avatar_id": "000000-000000-000000-000000",
        "avatar": {
          "id": "a123dc96-10f4-14b0-6846-686211a3fe66",
          "file_name": "super-cool-photo.jpg",
          "mime_type": "image/jpeg",
          "original_url": "https://example.com/media/super-cool-photo.jpg",
          "size": 84256,
          "url": "https://example.com/media/super-cool-photo-thumbnail@2x.jpg"
        },
        "external_ref": "consequat in ex"
      },
      "members": [],
      "type": {
        "id": "87d273cb-98f7-bc4c-8a71-2fc77a974f95",
        "name": "Gold tier",
        "description": "Enjoy exclusive benefits as part of being a member in our Gold tier",
        "terms": "Ut",
        "brand_id": "2d7fb1d2-a26b-e925-5485-bca91b715072",
        "offline_payments": false,
        "disable_confirmation_email": true,
        "private": false,
        "visibility": "public",
        "minimum_start_date": "1960-07-11T03:50:18.0Z",
        "min_members": 2,
        "max_members": 4,
        "rates": [
          {
            "id": "ebfce1d8-76bf-78a3-b148-60809ac95cd3"
          }
        ],
        "revenue_schedule": "FREQ=WEEKLY",
        "created_at": "1965-08-05T10:47:26.0Z",
        "updated_at": "1956-04-21T12:25:49.0Z",
        "deleted_at": "1919-03-26T01:23:48.0Z"
      },
      "rate": {
        "id": "9a421404-5d62-bd34-1027-c415ecb54ac4",
        "currency": "GBP",
        "price": 5000,
        "billing_frequency": "P1M",
        "processors": [
          "consequat",
          "labore laboris mollit",
          "qui commodo deserunt irure anim",
          "laboris",
          "in in"
        ],
        "private": true,
        "created_at": "1969-01-25T01:58:22.0Z"
      },
      "status": "needs_attention",
      "source": "app",
      "payment_method": {
        "id": "aliquip eiusmod voluptate in cupidatat",
        "type": "direct_debit",
        "last_4": "et magna minim",
        "status": "revoked"
      },
      "start_date": "1894-04-02T15:54:27.0Z",
      "end_date": "1910-12-24T09:12:13.0Z",
      "basket_id": "69488cac70c2fe012600009d",
      "external_ref": "dolore",
      "next_charge": {
        "id": "d8c44548-9d99-212f-dc03-4aaa11b05d7b",
        "amount": 3995,
        "currency": "GBP",
        "status": "errored",
        "billing_period_from": "1940-07-27",
        "billing_period_to": "1924-10-05"
      }
    },
    {
      "site_id": "a5d0d2da-4d73-d899-705c-37cc4b088aac",
      "membership_number": "1234567890",
      "rate": {
        "id": "d62e3ca8-adae-3cb1-293a-ec40cde73029",
        "membership_type_id": "ab6f536d-73cd-a39e-edc6-0dc07c2f0798",
        "name": "Standard rate",
        "currency": "GBP",
        "price": 5000,
        "joining_fee": 1000,
        "tax": 1250,
        "billing_frequency": "P1M",
        "processors": [
          "ea occaecat",
          "dolore",
          "dolor qui officia"
        ],
        "default_duration": "P1Y",
        "private": true,
        "created_at": "1912-01-12T01:02:30.0Z"
      },
      "payment_method": {
        "id": "deserunt qui ut occaecat",
        "type": "card",
        "last_4": "consectetur sit",
        "status": "revoked",
        "card_brand": "amex"
      },
      "start_date": "1897-02-20T13:41:56.0Z",
      "end_date": "1941-10-25T06:32:08.0Z",
      "next_charge": {
        "id": "68f2a928-16ee-a6c9-1a82-5ec355870df4",
        "amount": 3995,
        "currency": "GBP",
        "status": "pending",
        "billing_period_from": "1899-09-29",
        "billing_period_to": "1908-08-21"
      }
    }
  ],
  "meta": {
    "from": 1,
    "to": 2,
    "total": 2,
    "current_page": 1,
    "last_page": 2,
    "per_page": 15,
    "path": "http://example.com/api"
  },
  "links": {
    "first": "http://example.com?page=1",
    "next": "https://example.com?page=3",
    "prev": "https://example.com?page=1",
    "last": "https://example.com?page=4"
  }
}
getMembership

Show a membership

Use this endpoint to retrieve a Membership by its ID.

Path parameters

Responses

  • 200

    The Membership was successfully retrieved

  • 404

    The resource couldn't be found

GET/customers/memberships/{membershipId}
200
example response
{
  "data": {
    "membership_number": "1234567890",
    "members": [
      {
        "customer_id": "d0ec8778-1c2f-a52f-3e53-961de95c5f90",
        "membership_number": "1234567890",
        "is_lead": true
      },
      {
        "customer_id": "e63887d7-2f95-d424-59de-ca74141122d8",
        "membership_number": "1234567890",
        "is_lead": false
      },
      {
        "customer_id": "7695ae5c-6c05-f824-a922-5d228ff1cbde",
        "is_lead": false
      }
    ],
    "rate": {
      "id": "c68e4967-57cc-1ba7-d635-165d1352c20f",
      "name": "Standard rate",
      "currency": "GBP",
      "price": 5000,
      "joining_fee": 1000,
      "tax": 1250,
      "billing_frequency": "P1M",
      "processors": [],
      "default_duration": "P1Y",
      "private": true
    },
    "created_at": "1920-03-07T04:53:37.0Z",
    "basket_id": "69488cac70c2fe012600009e"
  }
}
404
example response
{
  "message": "The requested resource could not be found"
}
actionAddMembershipChargePayment

Record a manual payment against a charge

This endpoint allows a manual (off-Trybe) payment to be recorded against a membership charge.

Path parameters

Request body

  • The ID of the custom payment type this payment should be recorded as

  • amount
    Required

    The amount of the payment

Responses

  • 200

    A charge against a membership.

  • 404

    The resource couldn't be found

POST/shop/membership-charges/{chargeId}/payment
200
example response
{
  "data": {
    "id": "0e82cd89-59db-0134-3883-a5b692c8d651",
    "membership": {
      "id": "78ecf963-4162-df29-3282-4ad8b68ce34b",
      "membership_number": "00000014",
      "type_name": "Gold Membership",
      "customer_id": "315c5f06-82f4-43ad-0813-516e5b542bae",
      "customer_name": "Jane Jones"
    },
    "processor": "adyen",
    "processor_data": {
      "cardholder_name": "Mrs J Jones",
      "last_4": 4001,
      "processor_type": "Cash",
      "processor_type_id": "69488cac70c2fe012600009f"
    },
    "amount": 3995,
    "original_amount": 3995,
    "currency": "gbp",
    "tax": 1000,
    "status": "succeeded",
    "description": "cillum",
    "can_download_receipt": false,
    "amount_refunded": "Ut",
    "refunded": "aliquip velit",
    "refunds": [],
    "site_id": "c3c829e8-14ef-83d6-74ca-13bfaafc4742",
    "billing_period_from": "1928-10-24",
    "billing_period_to": "1942-03-07",
    "processing_at": "1909-06-10T10:07:59.0Z",
    "created_at": "1968-02-12T05:28:56.0Z",
    "updated_at": "1955-01-29T04:03:17.0Z"
  }
}
404
example response
{
  "message": "The requested resource could not be found"
}
actionProcessMembershipCharge

Manually process a charge for a membership

This endpoint allows a membership charge to be processed manually.

Path parameters

Responses

  • 200

    A charge against a membership.

  • 404

    The resource couldn't be found

POST/shop/membership-charges/{chargeId}/process
200
example response
{
  "data": {
    "id": "d16b1fd7-d61d-ddd1-e45b-849dac9fd808",
    "membership": {
      "id": "0466bf0d-4a8b-ec9d-f12e-2922378dc294",
      "membership_number": "00000014",
      "type_name": "Gold Membership",
      "customer_id": "244b898d-e3ce-7220-688b-971fcb88f6e5",
      "customer_name": "Jane Jones"
    },
    "processor": "adyen",
    "processor_data": {
      "cardholder_name": "Mrs J Jones",
      "processor_type_id": "69488cac70c2fe01260000a0"
    },
    "amount": 3995,
    "original_amount": 3995,
    "currency": "gbp",
    "tax": 1000,
    "status": "succeeded",
    "description": "sint",
    "can_download_receipt": true,
    "amount_refunded": "nulla cupidatat deserunt",
    "refunded": "Excepteur dolore sed enim",
    "refunds": [
      {
        "id": "e96261ab-4837-62ec-3494-0de1f36a98c6",
        "status": "succeeded",
        "amount": 995,
        "currency": "gbp",
        "notes": "Gesture of good will",
        "failure_reason": "invalid_details",
        "refunded_by": {
          "id": "e73ca281-76ec-3c38-dd2f-3551148d8644",
          "full_name": "Jane Jenkins"
        },
        "processor_data": {
          "processor": "adyen",
          "processor_id": "re_64301e0b2df9d11814010ea6"
        },
        "created_at": "1908-12-15T17:25:40.0Z",
        "updated_at": "1893-12-27T15:59:59.0Z"
      },
      {
        "id": "f18bfced-0039-5d94-a54b-207a2a80a775",
        "status": "succeeded",
        "amount": 995,
        "currency": "gbp",
        "notes": "Gesture of good will",
        "failure_reason": "invalid_details",
        "refunded_by": {
          "id": "9803a7a1-9635-0897-e982-abd28c32bbbc",
          "full_name": "Jane Jenkins"
        },
        "processor_data": {
          "processor": "adyen",
          "processor_id": "re_64301e0b2df9d11814010ea6"
        },
        "created_at": "1951-06-16T20:28:18.0Z",
        "updated_at": "1943-07-14T13:33:42.0Z"
      },
      {
        "id": "af999bc6-abca-04fe-7f82-d544de50d9ca",
        "status": "succeeded",
        "amount": 995,
        "currency": "gbp",
        "notes": "Gesture of good will",
        "failure_reason": "invalid_details",
        "refunded_by": {
          "id": "31a6e4a9-98cc-4e91-efc1-cc2097cf8dd4",
          "full_name": "Jane Jenkins"
        },
        "processor_data": {
          "processor": "adyen",
          "processor_id": "re_64301e0b2df9d11814010ea6"
        },
        "created_at": "1963-08-09T23:53:46.0Z",
        "updated_at": "1965-09-20T03:12:49.0Z"
      },
      {
        "id": "51376a07-9123-2190-3e9d-6d8662f583e4",
        "status": "succeeded",
        "amount": 995,
        "currency": "gbp",
        "notes": "Gesture of good will",
        "failure_reason": "invalid_details",
        "refunded_by": {
          "id": "512e1e6b-1fec-31f3-564c-f468af6779f8",
          "full_name": "Jane Jenkins"
        },
        "processor_data": {
          "processor": "adyen",
          "processor_id": "re_64301e0b2df9d11814010ea6"
        },
        "created_at": "1905-02-14T22:23:06.0Z",
        "updated_at": "1962-09-13T04:43:49.0Z"
      }
    ],
    "site_id": "c0ca6816-ced8-07e4-995b-288e09ba41fd",
    "billing_period_from": "1968-01-30",
    "billing_period_to": "1901-03-20",
    "processing_at": "1941-01-22T09:33:28.0Z",
    "created_at": "1956-06-22T03:23:57.0Z",
    "updated_at": "1942-06-08T13:08:51.0Z"
  }
}
404
example response
{
  "message": "The requested resource could not be found"
}
actionRetryMembershipCharge

Manually retry a charge for a membership

This endpoint allows a membership charge to be retried manually.

Path parameters

Responses

  • 200

    A charge against a membership.

  • 404

    The resource couldn't be found

POST/shop/membership-charges/{chargeId}/retry
200
example response
{
  "data": {
    "id": "0fb1eff3-2e17-4f42-972d-c7b930330246",
    "membership": {
      "id": "b21203b2-47ad-0269-7712-f325dd3a49c4",
      "membership_number": "00000014",
      "type_name": "Gold Membership",
      "customer_id": "f82e490c-784c-35da-802b-6548740832fc",
      "customer_name": "Jane Jones"
    },
    "processor": "adyen",
    "processor_data": {
      "cardholder_name": "Mrs J Jones",
      "last_4": 4001
    },
    "amount": 3995,
    "original_amount": 3995,
    "currency": "gbp",
    "tax": 1000,
    "status": "succeeded",
    "description": "dolore nostrud est sed",
    "can_download_receipt": true,
    "amount_refunded": "fugiat id veniam ut",
    "refunded": "dolore voluptate ex tempor",
    "refunds": [
      {
        "id": "b11adbf0-3449-bffa-ac8c-71665a2f52dc",
        "status": "succeeded",
        "amount": 995,
        "currency": "gbp",
        "notes": "Gesture of good will",
        "failure_reason": "invalid_details",
        "refunded_by": {
          "id": "fea3d6b4-6c7d-c1e7-2729-c7086d7cfda4",
          "full_name": "Jane Jenkins"
        },
        "processor_data": {
          "processor": "adyen",
          "processor_id": "re_64301e0b2df9d11814010ea6"
        },
        "created_at": "1892-10-30T08:34:37.0Z",
        "updated_at": "1967-08-02T06:47:54.0Z"
      },
      {
        "id": "2cee5b18-e158-a83c-ac66-952aafe0f86a",
        "status": "succeeded",
        "amount": 995,
        "currency": "gbp",
        "notes": "Gesture of good will",
        "failure_reason": "invalid_details",
        "refunded_by": {
          "id": "dd29c416-8e5e-ab8a-1bc3-00271a8dab8d",
          "full_name": "Jane Jenkins"
        },
        "processor_data": {
          "processor": "adyen",
          "processor_id": "re_64301e0b2df9d11814010ea6"
        },
        "created_at": "1910-10-07T04:08:34.0Z",
        "updated_at": "1893-10-04T03:38:45.0Z"
      },
      {
        "id": "a5e1c793-b86b-a0d8-9ea3-99403691de30",
        "status": "succeeded",
        "amount": 995,
        "currency": "gbp",
        "notes": "Gesture of good will",
        "processor_data": {
          "processor": "adyen",
          "processor_id": "re_64301e0b2df9d11814010ea6"
        },
        "created_at": "1959-06-28T01:56:39.0Z",
        "updated_at": "1913-06-07T15:31:46.0Z"
      },
      {
        "id": "495b3446-9f16-9cad-bc22-16b60980f7e9",
        "status": "succeeded",
        "amount": 995,
        "currency": "gbp",
        "notes": "Gesture of good will",
        "failure_reason": "invalid_details",
        "refunded_by": {
          "id": "f5bb3af1-5ea2-8c25-7b17-52aec774477d",
          "full_name": "Jane Jenkins"
        },
        "processor_data": {
          "processor": "adyen",
          "processor_id": "re_64301e0b2df9d11814010ea6"
        },
        "created_at": "1933-03-10T05:50:20.0Z",
        "updated_at": "1952-07-21T06:55:42.0Z"
      }
    ],
    "site_id": "3f0159ea-7af1-d053-2927-532cb76c1511",
    "billing_period_from": "1959-05-30",
    "billing_period_to": "1898-03-25",
    "processing_at": "1967-07-27T06:37:53.0Z",
    "created_at": "1896-09-29T01:09:17.0Z",
    "updated_at": "1934-05-14T15:51:44.0Z"
  }
}
404
example response
{
  "message": "The requested resource could not be found"
}