Hi Experts , I am trying to setup a Checkout API for monthly recurring payments.
I have few questions, if any body can answer or if we can schedule a call for better understanding
I created the Plan in Square Dashboard and it has generated the payment link
is this payment link going to be unique for every customer or one payment link is enough ?
how can I get user details after they have gone though the payment process , like customer id , order id , etc.
Setting up a Checkout API for monthly recurring payments with Square is a great choice. I’ll address your questions:
Payment Link Unique for Every Customer: The payment link generated for a plan in the Square Dashboard is typically a static link associated with that specific plan. It’s not unique for each customer. You would generally share this link with your customers for them to subscribe to the monthly plan.
Getting User Details After Payment: To get user details and additional information after a successful payment, you can use Square’s APIs. Here’s a high-level overview of how to achieve this:
Customer Information: To get customer details like customer ID, you can use the Square Customers API. You can create a customer profile before the payment process or associate the payment with an existing customer if they have an account.
Order Information: To retrieve order-related details, you can use the Square Orders API. When a customer completes a payment, you should receive an order object that contains information about the transaction, including order ID, amount, and more.
Subscription Management: If you’re setting up monthly recurring payments, you may also want to manage subscriptions. Square supports subscription management through APIs, allowing you to handle billing and subscription changes.
It’s important to integrate these APIs into your application to handle customer and order data effectively. If you need further assistance or have more specific questions about your implementation, please provide more details, and I’d be happy to help. Additionally, reaching out to Square’s developer support or scheduling a call with them can be beneficial for a more in-depth discussion and guidance.
Payment Link Unique for Every Customer: The payment link generated for a plan in the Square Dashboard is typically a static link associated with that specific plan. It’s not unique for each customer. You would generally share this link with your customers for them to subscribe to the monthly plan.
how is customer created ? when this static link is shared to the customer ?
or
do I have to create customer using Customer API and then with Static Link , custom makes the payment and then using Subscription API , I create the subscription , is this the flow ?
For the Checkout API, each generated link should be for a single customer. After a checkout has been completed for a payment link it cannot be used again, so additional customers would not be able to pay.
After completing the checkout, the customer will be redirected to a page defined by the redirect_url field (in checkout_options). An orderId query paramter will also be appended to that URL. You can set the redirect_url to your own page that can capture the orderId query parameter, then pass it to the Orders API (RetrieveOrder) to get additional information about it.
Hope that helps clear things up! Let me know if you have any other questions.
Yes. Square will use the provided phone number to see if a customer already exists in Square, and will create one if not.
Yes, if you set up the link as a Subscription Plan Checkout, the recurring payments for the subscription will be set up automatically upon checkout completion.
If the payment fails for the card on file for a customer, an invoice will be sent to them instead.
Hi Josh,
Once again thank you for your valuable responsive.
How is Subscription Plan Checkout link setup ? because when I try to setup the Online Checkout Plan link as subscription it asks for Customer Details ? Let me create a short loom video : Loom | Free Screen & Video Recording Software | Loom
Each subscription is going to be associated to a customer and when creating the subscription from the Dashboard you’ll need to assign it to a customer.