Changelog History
Page 4
-
v2.20181212.0
December 12, 2018 -
v2.20181205.0
December 05, 2018 -
v2.20180918.1 Changes
October 24, 2018๐ New feature: Support for Partial Payments in Connect v1
๐ The Connect SDK now supports partial payment functionality for the Connect v1 Transactions API with the addition of a new
Payment
field:Payment.is_partial
— Indicates whether or not the payment is only partially paid for. Iftrue
, the payment will have the tenders collected so far, but the itemizations will be empty until the payment is completed.
Tender
also includes 2 new fields to help resolve timing around payments with multiple tenders. Invoices that involve partial payment (e.g., requiring a deposit) may include tenders settled well before the entire payment is completed:Tender.tendered_at
— The time when the tender was accepted by the merchant.Tender.settled_at
— The time when the tender was captured, in ISO 8601 format. Typically the same as (or within moments of)tendered_at
unless the tender was part of a delay capture transaction.
The change also makes some behavioral changes to the Connect v1 Payment endpoints:
- Create Refunds rejects requests for invoices that have partial payments pending.
- List Payments takes a new request field,
include_partial
to indicate whether partial payments should be included in the response.
-
v2.20180918.0 Changes
September 18, 2018We have added Connect v2 Inventory API and birthdays in
Customer
entities.๐ New API: Inventory API (Connect V2)
The Connect v2 Inventory API replaces the Connect v1 Inventory API and introduces new functionality:
- Moving item variations quantities through predefined states
(e.g., from
IN_STOCK
toWASTE
). - Viewing the inventory adjustment history for an item variation.
- Batch inventory adjustments and information retrieval.
๐ New feature: Customer Birthdays (Connect V2)
- Customer profiles now include a
birthday
field. Dates are recorded in RFC-3339 format and can be set through theCreateCustomer
andUpdateCustomer
endpoints.
- Moving item variations quantities through predefined states
(e.g., from
-
v2.20180712.2 Changes
August 21, 2018The Connect SDK now includes functionality for the OAuth API. The Square OAuth API lets applications request and obtain permission from a Square account to make API calls on behalf of that account. Applications can request individual permissions so that users do not need to grant full access to their Square accounts.
OAuth API
๐
ObtainToken
endpoint — Exchanges the authorization code for an access token. After a merchant authorizes your application with the permissions form, an authorization code is sent to the application's redirect URL (See Implementing OAuth for information about how to set up the redirect URL).RenewToken
endpoint — Renews an OAuth access token before it expires. OAuth access tokens besides your application's personal access token expire after 30 days. You can also renew expired tokens within 15 days of their expiration. You cannot renew an access token that has been expired for more than 15 days. Instead, the associated merchant must complete the OAuth flow from the beginning. Important: TheAuthorization
header you provide to this endpoint must have the following format:Authorization: Client APPLICATION_SECRET
ReplaceAPPLICATION_SECRET
with your application's secret, available from the application dashboard.RevokeToken
endpoint — Revokes an access token generated with the OAuth flow. If a merchant has more than one access token for your application, this endpoint revokes all of them, regardless of which token you specify. If you revoke a merchant's access token, all of the merchant's active subscriptions associated with your application are canceled immediately. Important: TheAuthorization
header you provide to this endpoint must have the following format:Authorization: Client APPLICATION_SECRET
ReplaceAPPLICATION_SECRET
with your application's secret, available from the application dashboard.
-
v2.20180712.1 Changes
August 02, 2018We have added MobileAuthorization API.
๐ New endpoint: MobileAuthorization API
CreateMobileAuthorizationCode
endpoint — Generate a mobile authorization code for an instance of your application. Mobile authorization credentials permit an instance of your application to accept payments for a given location using the Square Reader SDK. Mobile authorization codes are one-time-use and expire shortly after being issued.
-
v2.20180712.0 Changes
July 12, 2018We introduce Square API versions.
Square-Version
is 2018-07-12 for this SDK.How versioning works
Square API versions (
Square-Version
) track changes in the evolution of Connect v2 APIs. TheSquare-Version
naming scheme isYYYY-MM-DD
, which indicates ๐ the date the version was released. Connect v1 APIs are not versioned. Square ๐ continues to support Connect v1, but future releases will focus on improving Connect v2 functionality.๐ By default, new Square applications are pinned to the version current at the ๐ time the application was created in the Square Application Dashboard. Pinning an 0๏ธโฃ application sets the default
Square-Version
for the application. The default โก๏ธSquare-Version
of an application can be reviewed and updated at any time on the settings pages for the application.๐ Versioning and SDKs
๐ When a new
Square-Version
is released, new Connect SDKs are publish on GitHub โก๏ธ and various package management systems. SDK updates follow the version convention of the associated language and manager but include the relatedSquare-Version
in the SDK version. For example, Connect SDKs tied to version ๐2018-01-04
might look like{SDK_VERSION}.20180104.{VERSION_INCREMENT}
.While SDK versions can be mapped to a related Square-version, SDK versions โก๏ธ follow an independent, incremental versioning scheme to allow updates and ๐ improvements to the SDKs outside of
Square-Version
updates.Migrating to new versions
In most cases, Square-version migration should be straightforward, with known ๐ฒ differences listed in the related Change Log.
โ To test migrations, developers can override the default
Square-Version
of an application by explicitly setting the preferredSquare-Version
in the HTTP header of the Connect v2 API request for REST calls. Requesting an API version that does not exist returns an error. Successful API responses include theSquare-Version
header to indicate the API version used to process request.Connect SDK versions are locked to specific API versions and cannot be โฌ๏ธ overwritten. Instead, the SDK must be upgraded to work with new API versions.
-
v2.9.0 Changes
June 28, 2018We have added search functionality to the Connect v2 Customer API.
๐ New features and Improvements: Customer API (Connect v2)
SearchCustomers
endpoint — retrieves groups of customer profiles based on a related characteristic. For example, retrieving all customers created in the past 24 hours.creation_source
field is now available onCustomer
entities. The creation source exposes the process that created a customer profile. For example, if a customer is created using the API, the creation source will beTHIRD_PARTY
.- Instant Profiles are now exposed in the following endpoints:
RetrieveCustomer
,SearchCustomers
,UpdateCustomer
,DeleteCustomer
.
๐ Fixes: Inventory SDK (Connect v1)
- ๐ Fix SDK request property
adjustment_type
in V1 Adjust Inventory.
-
v2.8.0 Changes
May 24, 2018โก๏ธ We have added sorting functionality to the Connect v2 Customer API, updated the Connect v1 Payments API to include information about surcharges and ๐ improvements to the Item data type.
๐ New feature: Customer API (Connect v2)
- ListCustomers endpoint — now provides the ability to sort
customers by their creation date using the
sort_field
andsort_order
parameters.
๐ New features: Payments API (Connect v1)
The Payments API now returns information about surcharges applied to payments. The new functionality introduces the following new data types:
- SurchargeMoney datatype — The total of all surcharges applied to the payment.
- Surcharges datatype — A list of all surcharges associated with the payment.
- Surcharge datatype — A surcharge that is applied to the payment. One example of a surcharge is auto-gratuity, which is a fixed-rate surcharge applied to every payment, often based on party size.
We are constantly evaluating new languages to add. In the meantime, if the ๐ language you need is not supported, you can use our [Swagger pipeline](<%= articles__client_libraries_path%>#generatingwithswagger) to generate a custom SDK or continue sending JSON to the endpoint URLs directly.
๐ Improvement: Item (Connect v1)
Item will now provide two new properties:
category_id
— indicates if an item can be added to pickup orders from the merchant's online storeavailable_for_pickup
— indicates the item's category (if any).
- ListCustomers endpoint — now provides the ability to sort
customers by their creation date using the
-
v2.7.0 Changes
April 26, 2018๐ New features: Transactions API and Payments API
The Transactions API in Connect v2 now includes payment and refund information from exchanges.
ListTransactions
now includes payment information from sales and exchanges and refund information from returns and exchanges.ListRefunds
now includes refunds that result from exchanges in addition to partial refunds and itemized returns through Square's Point of Sale applications.
The Payments API in Connect v1 now includes payment and refund information from exchanges.
ListPayments
now includes refunds that are generated from exchanges to account for the value of returned goods.- 0๏ธโฃ
ListRefunds
now returns an approximate number of refunds (default: 100, max: 200). The response may contain more results than the prescribed limit when refunds are made simultaneously to multiple tenders in a payment or when refunds are generated from exchanges to account for the value of returned goods. is_exchange
is added toV1Refund
andV1Tender
. Refunds and tenders marked in this way ๐ represent the value of returned goods in an exchange, rather than actual money movement.