Download OpenAPI specification:Download
The service provides capabilities to interact with the payment's stored data inside of BEAUTY_OS Core in MongoDB. This is used throughout the website to retrieve information about the payment and interact with the payment's settings.
Withdraws balance from a salon or stylist.
| salonId | string |
| stylistSingleSalonId | string |
| user-id required | string |
| amount required | number <double> |
{- "amount": 0.1
}[- {
- "id": "string",
- "salonId": "string",
- "stylistSingleSalonId": "string",
- "currentBalance": 0.1,
- "currentClearedBalance": 0.1,
- "currentTipBalance": 0.1,
- "amount": 0.1,
- "type": "CREDIT",
- "description": "string",
- "status": "INITIAL",
- "paymentId": "string",
- "lastPaymentId": "string",
- "lastPaymentDate": "2019-08-24T14:15:22Z",
- "lastProcessedDate": "2019-08-24T14:15:22Z",
- "stripeTransferId": "string",
- "stripePayoutId": "string",
- "isCleared": true,
- "clearAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]Retrieves balance transactions by given salon, stylist, client and status.
| salonId required | string |
| stylistSingleSalonId | string |
| status | string (BalanceStatus) Enum: "INITIAL" "PENDING" "PROCESSING" "COMPLETED" "FAILED" "CANCELLED" |
| type | string (BalanceType) Enum: "CREDIT" "DEBIT" "REFUND" |
[- {
- "id": "string",
- "salonId": "string",
- "stylistSingleSalonId": "string",
- "currentBalance": 0.1,
- "currentClearedBalance": 0.1,
- "currentTipBalance": 0.1,
- "amount": 0.1,
- "type": "CREDIT",
- "description": "string",
- "status": "INITIAL",
- "paymentId": "string",
- "lastPaymentId": "string",
- "lastPaymentDate": "2019-08-24T14:15:22Z",
- "lastProcessedDate": "2019-08-24T14:15:22Z",
- "stripeTransferId": "string",
- "stripePayoutId": "string",
- "isCleared": true,
- "clearAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]Retrieves current balance and recent transactions for a salon or stylist.
| salonId | string |
| stylistSingleSalonId | string |
{- "currentBalance": 0.1,
- "currentClearedBalance": 0.1,
- "currentTipBalance": 0.1,
- "recentTransactions": [
- {
- "id": "string",
- "salonId": "string",
- "stylistSingleSalonId": "string",
- "currentBalance": 0.1,
- "currentClearedBalance": 0.1,
- "currentTipBalance": 0.1,
- "amount": 0.1,
- "type": "CREDIT",
- "description": "string",
- "status": "INITIAL",
- "paymentId": "string",
- "lastPaymentId": "string",
- "lastPaymentDate": "2019-08-24T14:15:22Z",
- "lastProcessedDate": "2019-08-24T14:15:22Z",
- "stripeTransferId": "string",
- "stripePayoutId": "string",
- "isCleared": true,
- "clearAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}Retrieves revenue statistics for today, this week, and this month.
| salonId | string |
| stylistSingleSalonId | string |
{- "today": 0.1,
- "thisWeek": 0.1,
- "thisMonth": 0.1,
- "todayForecast": 0.1,
- "thisWeekForecast": 0.1,
- "thisMonthForecast": 0.1
}Retrieves revenue summary for today and yesterday.
| salonId | string |
| stylistSingleSalonId | string |
{- "today": {
- "totalRevenue": 0.1,
- "stylistRevenue": 0.1,
- "appointmentCount": 0.1
}, - "yesterday": {
- "totalRevenue": 0.1,
- "stylistRevenue": 0.1,
- "appointmentCount": 0.1
}
}Retrieves balance transaction's data by given id.
| balanceId required | string |
{- "id": "string",
- "salonId": "string",
- "stylistSingleSalonId": "string",
- "currentBalance": 0.1,
- "currentClearedBalance": 0.1,
- "currentTipBalance": 0.1,
- "amount": 0.1,
- "type": "CREDIT",
- "description": "string",
- "status": "INITIAL",
- "paymentId": "string",
- "lastPaymentId": "string",
- "lastPaymentDate": "2019-08-24T14:15:22Z",
- "lastProcessedDate": "2019-08-24T14:15:22Z",
- "stripeTransferId": "string",
- "stripePayoutId": "string",
- "isCleared": true,
- "clearAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}Retrieves payments by filter criteria.
| salonId required | string Required salon ID to filter payments |
| stylistSingleSalonId | string Optional stylist single salon ID to filter |
| clientId | string Optional client ID to filter |
| status | string (PaymentStatus) Enum: "PENDING" "PROCESSING" "SUCCESS" "REFUNDED" "FAILED" Optional payment status to filter |
| search | string Optional search term |
| minTotalCost | number <double> Optional minimum total cost filter |
| maxTotalCost | number <double> Optional maximum total cost filter |
| fromDate | string Optional start date for filtering (ISO string) |
| toDate | string Optional end date for filtering (ISO string) |
| basketId | string Optional basket ID to filter |
| modes | Array of strings (PaymentMode) Items Enum: "ONLINE" "OFFLINE" Optional payment modes to filter (multi-select) |
| providers | Array of strings (PaymentProvider) Items Enum: "STRIPE" "CASH" "ZELLE" "VENMO" "CHECK" "OTHER" Optional payment providers to filter (multi-select) |
[- {
- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}
]Process checkout for a basket
| basketId required | string The ID of the basket to checkout |
| user-id required | string The ID of the user performing the checkout |
The checkout request containing optional amount and tip
| amount | number <double> |
| tip | number <double> |
| mode required | string (PaymentMode) Enum: "ONLINE" "OFFLINE" |
| provider required | string (PaymentProvider) Enum: "STRIPE" "CASH" "ZELLE" "VENMO" "CHECK" "OTHER" |
| paymentLabel | string |
| automaticCapture | boolean |
| sendPaymentLink | boolean |
| sendTipSelectionLink | boolean |
{- "amount": 0.1,
- "tip": 0.1,
- "mode": "ONLINE",
- "provider": "STRIPE",
- "paymentLabel": "string",
- "automaticCapture": true,
- "sendPaymentLink": true,
- "sendTipSelectionLink": true
}{- "tipSelectionUrl": "string",
- "paymentLinkUrl": "string",
- "basketResponse": {
- "remainingAmount": 0.1,
- "amountPaid": 0.1,
- "discounts": 0.1,
- "subtotal": 0.1,
- "total": 0.1,
- "status": "string",
- "id": "string"
}, - "paymentResponse": {
- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}
}Redirects to the Stripe payment link for a given payment. This provides a shorter URL that can be used in SMS messages.
| paymentId required | string The ID of the payment |
{- "name": "string",
- "message": "string",
- "code": "string",
- "status": 0.1
}Update tip amount for a payment
| paymentId required | string The ID of the payment to update |
| user-id required | string The ID of the user performing the update |
The tip update request
| tip required | number <double> |
| capturePayment | boolean |
{- "tip": 0.1,
- "capturePayment": true
}{- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}Generate a Stripe payment link with the selected tip amount. This endpoint is called from the frontend after the client selects a tip. It updates the payment with the tip and creates a Stripe Checkout Session.
| paymentId required | string The ID of the payment to generate link for |
The tip amount selected by the client
| tip required | number <double> |
{- "tip": 0.1
}{- "paymentResponse": {
- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}, - "paymentLinkUrl": "string"
}Export payment history to Excel and send via email to salon owner. Filters payments by salon and optional date range, status, etc. Generates an Excel report and emails it to the salon owner's email address. Returns immediately after initiating the email send (async).
| salonId required | string Salon ID to filter payments |
| stylistSingleSalonId | string Optional stylist single salon ID to filter |
| clientId | string Optional client ID to filter |
| status | string (PaymentStatus) Enum: "PENDING" "PROCESSING" "SUCCESS" "REFUNDED" "FAILED" Optional payment status to filter |
| search | string Optional search term |
| minTotalCost | number <double> Optional minimum total cost filter |
| maxTotalCost | number <double> Optional maximum total cost filter |
| fromDate | string Optional start date for filtering (ISO string) |
| toDate | string Optional end date for filtering (ISO string) |
| modes | Array of strings (PaymentMode) Items Enum: "ONLINE" "OFFLINE" Optional payment modes to filter (multi-select) |
| providers | Array of strings (PaymentProvider) Items Enum: "STRIPE" "CASH" "ZELLE" "VENMO" "CHECK" "OTHER" Optional payment providers to filter (multi-select) |
| user-id required | string The ID of the user requesting the export (must be salon owner) |
{- "email": "string",
- "message": "string"
}Process checkout for a basket with client validation
| basketId required | string The ID of the basket to checkout |
| client-id required | string The ID of the client performing the checkout |
The checkout request containing optional amount and tip
| amount | number <double> |
| tip | number <double> |
| mode required | string (PaymentMode) Enum: "ONLINE" "OFFLINE" |
| provider required | string (PaymentProvider) Enum: "STRIPE" "CASH" "ZELLE" "VENMO" "CHECK" "OTHER" |
| paymentLabel | string |
| automaticCapture | boolean |
| sendPaymentLink | boolean |
| sendTipSelectionLink | boolean |
{- "amount": 0.1,
- "tip": 0.1,
- "mode": "ONLINE",
- "provider": "STRIPE",
- "paymentLabel": "string",
- "automaticCapture": true,
- "sendPaymentLink": true,
- "sendTipSelectionLink": true
}{- "tipSelectionUrl": "string",
- "paymentLinkUrl": "string",
- "basketResponse": {
- "remainingAmount": 0.1,
- "amountPaid": 0.1,
- "discounts": 0.1,
- "subtotal": 0.1,
- "total": 0.1,
- "status": "string",
- "id": "string"
}, - "paymentResponse": {
- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}
}Update tip amount for a payment
| paymentId required | string The ID of the payment to update |
| client-id required | string |
The tip update request
| tip required | number <double> |
| capturePayment | boolean |
{- "tip": 0.1,
- "capturePayment": true
}{- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}Generate a Stripe payment link with the selected tip amount (Public endpoint). This endpoint is called from the frontend tip selection page after the client selects a tip. It updates the payment with the tip and creates a Stripe Checkout Session. This is a public endpoint that doesn't require authentication.
| paymentId required | string The ID of the payment to generate link for |
The tip amount selected by the client
| tip required | number <double> |
{- "tip": 0.1
}{- "paymentResponse": {
- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}, - "paymentLinkUrl": "string"
}Retrieves payment's data by given id.
| paymentId required | string Represents the given id for a payment. |
{- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}Get all-time revenue for multiple salons (bulk operation) Revenue = salonAmountBeforeBeautyFees - refundAmountSalon - refundTipAmountSalon Only counts SUCCESS status and ONLINE mode payments
The request body containing salon IDs
| salonIds required | Array of strings |
{- "salonIds": [
- "string"
]
}[- {
- "revenue": 0.1,
- "salonId": "string"
}
]Creates a new Stripe account for a salon
| user-id required | string |
The request body containing the salon ID and optional business type
| salonId required | string |
| businessType | string (StripeBusinessType) Enum: "individual" "company" |
{- "salonId": "string",
- "businessType": "individual"
}{- "url": "string"
}Lists all terminal readers for a salon
| salonId required | string The salon ID |
{- "readers": [
- {
- "id": "string",
- "label": "string",
- "status": "string",
- "location": "string",
- "serialNumber": "string",
- "deviceType": "string",
- "deviceSwVersion": "string",
- "ipAddress": "string",
- "registrationCode": "string"
}
]
}Creates a new payment.
| user-id required | string |
Payment creation request
| cost required | number <double> |
| salonId required | string |
| stylistSingleSalonId | string |
| clientId | string |
| tip required | number <double> |
| stylistCommission | number <double> |
| stylistTipCommission | number <double> |
| automaticCapture | boolean |
| mode | string (PaymentMode) Enum: "ONLINE" "OFFLINE" |
| provider | string (PaymentProvider) Enum: "STRIPE" "CASH" "ZELLE" "VENMO" "CHECK" "OTHER" |
| paymentLabel | string |
{- "cost": 0.1,
- "salonId": "string",
- "stylistSingleSalonId": "string",
- "clientId": "string",
- "tip": 0.1,
- "stylistCommission": 0.1,
- "stylistTipCommission": 0.1,
- "automaticCapture": true,
- "mode": "ONLINE",
- "provider": "STRIPE",
- "paymentLabel": "string"
}{- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}Retrieves payment's data by given salon, stylist, client and status.
| salonId required | string Salon ID |
| stylistSingleSalonId | string Stylist single salon ID |
| clientId | string Client ID |
| status | string (PaymentStatus) Enum: "PENDING" "PROCESSING" "SUCCESS" "REFUNDED" "FAILED" Payment status |
| search | string Search term |
| minTotalCost | number <double> Minimum total cost filter |
| maxTotalCost | number <double> Maximum total cost filter |
| fromDate | string Start date for filtering (ISO string) |
| toDate | string End date for filtering (ISO string) |
| basketId | string Basket ID filter |
| modes | Array of strings (PaymentMode) Items Enum: "ONLINE" "OFFLINE" Payment modes to filter (multi-select) |
| providers | Array of strings (PaymentProvider) Items Enum: "STRIPE" "CASH" "ZELLE" "VENMO" "CHECK" "OTHER" Payment providers to filter (multi-select) |
[- {
- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}
]Retrieves payment's data by given id.
| paymentId required | string Payment ID |
| user-id required | string |
{- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}Sends a receipt PDF to an email address.
| paymentId required | string The payment ID |
The request containing the PDF and email
| pdf required | string |
| email required | string |
{- "pdf": "string",
- "email": "string"
}{- "name": "string",
- "message": "string",
- "code": "string",
- "status": 0.1
}Refunds a payment by payment ID.
| paymentId required | string Payment ID to refund |
| user-id required | string |
Refund request details
| amount required | number <double> |
| tipAmount required | number <double> |
| reason | string |
{- "amount": 0.1,
- "tipAmount": 0.1,
- "reason": "string"
}{- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}Updates the tip amount for a payment and optionally captures it.
| paymentId required | string Payment ID to update |
| user-id required | string |
Update tip request details
| tip required | number <double> |
| capturePayment | boolean |
{- "tip": 0.1,
- "capturePayment": true
}{- "depositPaid": true,
- "childPaymentIds": [
- "string"
], - "parentPaymentId": "string",
- "type": "SINGLE",
- "paymentLabel": "string",
- "provider": "STRIPE",
- "mode": "ONLINE",
- "salonName": "string",
- "stylists": [
- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}
], - "stylist": {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "profileImage": "string",
- "socialMedia": "string",
- "level": 0.1,
- "services": 0.1,
- "rating": 0.1,
- "pushNotificationId": "string",
- "isPushNotificationEnabled": true
}, - "client": {
- "id": "string",
- "username": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "showRate": 0.1,
- "totalReviews": 0.1,
- "visits": 0.1,
- "totalPaid": 0.1,
- "avgVisit": 0.1,
- "avgVisitValue": 0.1
}, - "updatedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "automaticCapture": true,
- "beautyosFeeFixed": 0.1,
- "beautyosFeePercentage": 0.1,
- "convinestFeeFixed": 0.1,
- "convinestFeePercentage": 0.1,
- "stripeRefundIds": [
- "string"
], - "clientSecret": "string",
- "stripePaymentIntentId": "string",
- "salonId": "string",
- "clientFullName": "string",
- "clientId": "string",
- "stylistSingleSalonId": "string",
- "status": "PENDING",
- "cardHolderName": "string",
- "cardExpYear": 0.1,
- "cardExpMonth": 0.1,
- "cardLast4": "string",
- "cardType": "string",
- "transactionFee": 0.1,
- "stylistTipCommission": 0.1,
- "stylistCommission": 0.1,
- "refundTipAmountStylist": 0.1,
- "refundTipAmountSalon": 0.1,
- "refundTipAmount": 0.1,
- "refundAmountStylist": 0.1,
- "refundAmountSalon": 0.1,
- "refundAmount": 0.1,
- "salonAmount": 0.1,
- "salonTipAmount": 0.1,
- "stylistAmount": 0.1,
- "stylistTipAmount": 0.1,
- "tipTotalPaid": 0.1,
- "serviceTotalPaid": 0.1,
- "netTotalCost": 0.1,
- "totalCost": 0.1,
- "tip": 0.1,
- "amount": 0.1,
- "id": "string"
}Create a subscription checkout session for a salon. This endpoint creates a Stripe Checkout Session and returns a URL that the salon owner should be redirected to in order to complete the subscription payment.
Requirements:
Note: Currency is hardcoded to USD and interval is hardcoded to monthly billing.
| salonId required | string
|
| user-id required | string
|
{- "sessionId": "string",
- "checkoutUrl": "string"
}Cancel a salon's subscription. This endpoint cancels the active Stripe subscription for the salon. The webhook will automatically update the salon's isSubscribed status to false.
Requirements:
| salonId required | string
|
| user-id required | string
|
{- "cancelledAt": "string",
- "salonId": "string",
- "message": "string"
}Get subscription details for a salon. This endpoint returns the current subscription status and details for the salon.
Requirements:
| salonId required | string
|
| user-id required | string
|
{- "subscribedAt": "2019-08-24T14:15:22Z",
- "isSubscribed": true,
- "subscriptionAmountCents": 0.1,
- "subscription": "string"
}