# Web Payment SDK Required?

**URL:** <https://developer.squareup.com/forums/t/web-payment-sdk-required/9553>\
**Category:** Questions\
**Tags:** payments-api, checkout-api, web-payments-sdk\
**Created:** [May 22, 2023, 8:16pm UTC](https://developer.squareup.com/forums/t/web-payment-sdk-required/9553 "2023-05-22T20:16:20Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Cinji18](https://avatars.discourse-cdn.com/v4/letter/c/8797f3/32.png) [@Cinji18](https://developer.squareup.com/forums/u/Cinji18)\
**Post date:** [May 22, 2023, 8:16pm UTC](https://developer.squareup.com/forums/t/web-payment-sdk-required/9553/1 "2023-05-22T20:16:20Z")

</div>

Hello,

I can’t tell from the documentation. I want to use Square Payment APIs only (as in without Web Payment SDK) to send the payment (Call CreatePayment) to the Square-hosted checkout page (call CheckoutPaymentLink), but it looks like SDK _is_ required.

I am completely new to building apps and using APIs, so some guidance in this area would be great.

Thank you.

---

<div class="post-metadata">

**Author:** ![Bryan-Square](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/bryan-square/32/38_2.png) [@Bryan-Square](https://developer.squareup.com/forums/u/Bryan-Square)\
**Post date:** [May 22, 2023, 9:09pm UTC](https://developer.squareup.com/forums/t/web-payment-sdk-required/9553/2 "2023-05-22T21:09:56Z")

</div>

If your going to use the Payments API you’ll have to use the Web Payments SDK. That’s the only way to generate the `source_id` that’s passed to the `CreatePayment` request. If your going to use the payment links from [CreatePaymentLink](https://developer.squareup.com/reference/square/checkout-api/create-payment-link) you won’t call `CreatePayment`. The generated link will take the customer to the Square hosted page where the payment will be processed. 🙂

---

<div class="post-metadata">

**Author:** ![Cinji18](https://avatars.discourse-cdn.com/v4/letter/c/8797f3/32.png) [@Cinji18](https://developer.squareup.com/forums/u/Cinji18)\
**Post date:** [May 23, 2023, 3:48am UTC](https://developer.squareup.com/forums/t/web-payment-sdk-required/9553/3 "2023-05-23T03:48:01Z")

</div>

Ah.

See, I got the two different methods mixed up. Thank you for clarifying. I will need to try this out.

I now would like to confirm something. Square Docs says the CreatePaymentLink specifies the order. Am I correct to take that as meaning I do not have to call CreateOrder?

---

<div class="post-metadata">

**Author:** ![emmawade](https://avatars.discourse-cdn.com/v4/letter/e/51bf81/32.png) [@emmawade](https://developer.squareup.com/forums/u/emmawade)\
**Post date:** [June 11, 2023, 5:16am UTC](https://developer.squareup.com/forums/t/web-payment-sdk-required/9553/4 "2023-06-11T05:16:53Z")

</div>

@[Cinji18](https://prozentrechner-online.com/) Hello,

If you want to use Square Payment APIs without the Web Payment SDK, you can still achieve your goal of sending the payment to the Square-hosted checkout page. Here’s a general outline of the process:

1. Set up your Square developer account: Start by creating a Square developer account and accessing the Developer Dashboard.
2. Generate API credentials: In the Developer Dashboard, navigate to the “Applications” section and create a new application. This will generate your API credentials, including an Access Token, which you will use to authenticate your API calls.
3. Make a CreatePayment API call: Use the CreatePayment endpoint to create a payment object. Include the necessary details such as the amount, currency, and other relevant information. This API call will initiate the payment process.
4. Retrieve the checkout URL: After successfully creating the payment, you can retrieve the checkout URL using the response from the CreatePayment API call. The checkout URL will direct the customer to the Square-hosted checkout page.
5. Redirect the customer to the checkout page: Once you have the checkout URL, you can redirect the customer to that page using a server-side redirect or by providing the URL to the customer for manual redirection.

Note that this process requires understanding and implementation of API integration techniques. It’s recommended to refer to the official Square Payment API documentation and examples to get detailed instructions and code snippets that demonstrate how to make API calls and handle responses.

If you’re new to building apps and using APIs, it might be helpful to consult with a developer or seek resources that provide step-by-step guidance on API integration. Square also offers developer support and resources to assist you in the integration process.

Good luck with your app development journey, and don’t hesitate to ask if you have any further questions!

---

<div class="post-metadata">

**Author:** ![Bryan-Square](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/bryan-square/32/38_2.png) [@Bryan-Square](https://developer.squareup.com/forums/u/Bryan-Square)\
**Post date:** [June 12, 2023, 4:11pm UTC](https://developer.squareup.com/forums/t/web-payment-sdk-required/9553/5 "2023-06-12T16:11:30Z")

</div>

@Cinji18 Yes, you don’t need to call `CreateOrder` with the Payment Links. You’ll build the order and and pass it in as part of the `CreateCheckoutLink` API call. 🙂

@emmawade, We really appreciate your contribution to the community. However your post is a little miss leading. With the Square generated links that redirects customer to a Square hosted page to checkout there are no API calls to the Payments API `CreatePayment`. There is only one API  
call to the `CreatePaymentLink` that generates the link for checkout. 🙂

---

<div class="post-metadata">

**Author:** ![Cinji18](https://avatars.discourse-cdn.com/v4/letter/c/8797f3/32.png) [@Cinji18](https://developer.squareup.com/forums/u/Cinji18)\
**Post date:** [June 15, 2023, 10:24pm UTC](https://developer.squareup.com/forums/t/web-payment-sdk-required/9553/6 "2023-06-15T22:24:43Z")

</div>

Great! I think I did this because I am able to arrive to the Square-hosted checkout test page/panel.

Just to be certain, if this is done correctly, I should be able to see the transactions in the regular Square dashboard in [squareup.com](http://squareup.com) (not in Square Developer), correct?

---

<div class="post-metadata">

**Author:** ![Bryan-Square](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/bryan-square/32/38_2.png) [@Bryan-Square](https://developer.squareup.com/forums/u/Bryan-Square)\
**Post date:** [June 15, 2023, 10:32pm UTC](https://developer.squareup.com/forums/t/web-payment-sdk-required/9553/7 "2023-06-15T22:32:43Z")

</div>

Great! Yes, any completed payments will be visible in the Seller Dashboard. 🙂
