# Get a bearer authentication token
Source: https://docs.sezzle.com/docs/api/core/authentication/postauthentication
post /v2/authentication
Generate authentication token from your Sezzle merchant API keys for use in the header of all other API requests.
# Get interest account activity
Source: https://docs.sezzle.com/docs/api/core/interest/getv2activity
get /v2/interest/activity
If you are enrolled in the interest account program, get the current activity on the interest account.
# Get interest account balance
Source: https://docs.sezzle.com/docs/api/core/interest/getv2balance
get /v2/interest/balance
If you are enrolled in the interest account program, get the current balance on the interest account. Fractions of cents are tracked to properly calculate daily interest accrual even if the interest balance is low.
# Delete checkout by order
Source: https://docs.sezzle.com/docs/api/core/orders/deletev2deletecheckoutbyorder
delete /v2/order/{order_uuid}/checkout
Delete an active (incomplete) checkout for an order. An example use-case is when a customer has been redirected to Sezzle but the order is cancelled in the ecommerce platform, call this endpoint to prevent the customer from completing the Sezzle checkout.
# Get order details
Source: https://docs.sezzle.com/docs/api/core/orders/getv2order
get /v2/order/{order_uuid}
Get details and check the status of an existing order.\
Can be performed any time after session creation
# Payment Flow
Source: https://docs.sezzle.com/docs/api/core/orders/index

1. Merchant calls `/v2/session` with order and intent of `AUTH` or `CAPTURE`. Optionally, the merchant can send customer information
2. Sezzle returns order uuid and checkout URL.
3. Merchant redirects customer to Sezzle checkout URL.
4. Customer completes the Sezzle checkout and is redirected to the session complete URL.
* If the intent was to `CAPTURE`, Sezzle will capture the total order amount.
* If the intent was to `AUTH`, Sezzle will only authorize the total order amount and the merchant can call `/v2/order` later to release or capture amounts using the order uuid.
## Supported Methods
# Update order
Source: https://docs.sezzle.com/docs/api/core/orders/patchv2checkout
patch /v2/order/{order_uuid}
Once transaction is completed, update Sezzle order with merchant reference ID
# Update checkout by order
Source: https://docs.sezzle.com/docs/api/core/orders/patchv2updatecheckoutbyorder
patch /v2/order/{order_uuid}/checkout
Complete an Express Checkout order
This endpoint should be used with our express checkout offering. It is not intended for the direct integration flow.
# Capture amount by order
Source: https://docs.sezzle.com/docs/api/core/orders/postv2capturebyorder
post /v2/order/{order_uuid}/capture
Capture an amount by order, either in full or partial capture, in cases when the order items are shipped separately.\
Can be performed after shopper has authorized the transaction by completing checkout with Sezzle, but before authorization expires
# Reauthorize amount by order
Source: https://docs.sezzle.com/docs/api/core/orders/postv2reauthorizebyorder
post /v2/order/{order_uuid}/reauthorize
Reauthorize an amount by order whose initial authorization has expired before payment could be captured. Any attempts to reauthorize before the authorization expires will fail.\
Can be performed after shopper has authorized the transaction by completing checkout with Sezzle
Please note the following when reauthorizing an order.
* A new order will be created
* The intent will be set to AUTH
* The reference\_id will be the same as the original order
* The reauthorized amount will be a new installment plan for the customer
Reauthorizations are not guaranteed to be approved. It is extremely important to note this API will return a 200 success if the request to reauthorize is successful (i.e. no errors) but the customer was not approved.
Please be sure to check the authorization **approved** value in the response to determine if the reauthorization order was created.
# Refund amount by order
Source: https://docs.sezzle.com/docs/api/core/orders/postv2refundbyorder
post /v2/order/{order_uuid}/refund
Refund an amount by order. An example use-case is when an order was captured but the customer returned item(s) that requires them to be refunded.\
Can be performed after order capture.
# Release amount by order
Source: https://docs.sezzle.com/docs/api/core/orders/postv2releasebyorder
post /v2/order/{order_uuid}/release
Release an amount by order. An example use-case is when an order is unable to be fully fulfilled and part of the authorization needs to be released. Then a capture can be called for the remaining amount.\
Can be performed after shopper has authorized the transaction by completing checkout with Sezzle but before the payment is fully captured.
# Get session status
Source: https://docs.sezzle.com/docs/api/core/sessions/getv2session
get /v2/session/{session_uuid}
Get session details
# Create a session
Source: https://docs.sezzle.com/docs/api/core/sessions/postv2session
post /v2/session
Initiate a Sezzle session with shopper order details, redirect links, and capture and tokenization settings
# Get card data by token
Source: https://docs.sezzle.com/docs/api/core/sessions/virtual/carddatabytoken
get /v2/session/card/token/{token}
You can use this endpoint to request card data with the checkout card token. The card token is temporary and only available for a limited time. This endpoint is only needed when a card session is created with a card response format of token.
**Security Rules** Data is only available for 24 hours and requires an
authorization token. Once accessed the token is deleted which cannot be
undone.
# Create a card session
Source: https://docs.sezzle.com/docs/api/core/sessions/virtual/postv2sessioncard
post /v2/session/card
Creates a Sezzle virtual card session. A card session represents the issuance of a Sezzle virtual card to a Sezzle user and/or the agreement of a Sezzle user to use the virtual card as payment. Use the card session endpoints to create and update a card session.
This endpoint should be used with our virtual card offering. It is not intended for the direct integration flow.
# Update a card session
Source: https://docs.sezzle.com/docs/api/core/sessions/virtual/setorderid
patch /v2/session/{session_id}/card
After the virtual card transaction for this session is successfully completed and a Sezzle order is created, call this endpoint to assign your order ID to the (external) reference ID of the Sezzle order.
# Get summary
Source: https://docs.sezzle.com/docs/api/core/settlements/getv2summary
get /v2/settlements/summaries
Get a summarized list of settlement payouts.
If your store accepts multiple currencies, you will need to request settlement summaries for each supported currency. If currency code is not provided in the request, the default currency will be USD.
# Get details
Source: https://docs.sezzle.com/docs/api/core/settlements/getv2summarydetail
get /v2/settlements/details/{payout_uuid}
Get details on a specific settlement payout.
## Payout Summary (rows 1-2)
### Summary Headers (row 1)
| Column Header | Description |
| --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| Total order amount | The sum of all orders on this payout. |
| Total refund amount | The sum of all refunds on this payout. |
| Total fee amount | The sum of all fees on this payout. |
| Total returned fee amount | The sum of all returned fees on this payout. |
| Total chargeback amount | The sum of all chargebacks on this payout. |
| Total chargeback reversal amount | The sum of all chargeback reversals on this payout. |
| Total interest transfer amount | The sum of all interest transfers on this payout. If you are not participating in the interest program, this field will be omitted. |
| Total correction amount | The sum of all corrections on this payout. |
| Total referral revenue transfer amount | The sum of all referral revenue transfers on this payout. |
| Total bank account withdrawal amount | The sum of all bank account withdrawals. |
| Total bank account withdrawal reversal amount | The sum of all bank account withdrawal reversals, which reflect a bank account withdrawal that has failed. |
| Forex fees | The cost of foreign exchange fees associated with this payout. |
| Net settlement amount | Net amount of settlement. |
| Payment uuid | The UUID for this payout. |
| Settlement currency | The currency in which this payout was sent. |
| Payout date | The date this payout was sent. |
| Payout status | The current status of this payout. |
## Line Items (rows 3-n)
### Line Item Headers (row 3)
| Column Header | Description |
| --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Type](#line-item-type) | Describes the type of event (Order, Fee, Refund, etc.). |
| Order capture date | The date at which the order was captured. This field is empty if the order has not yet been captured. |
| Order created at | The date at which the order was created. |
| Event date | The date at which the event took place. |
| Order uuid | The uuid associated with the order. |
| Customer order id | The customer's order number. |
| External reference id | The external reference ID submitted with the order. |
| Order Amount | The order amount for the ORDER event |
| Amount | The amount of the event. |
| Posting currency | The customer's currency code. |
| Type code | A numeric code that corresponds with the Type field. |
| Chargeback code | A numeric code that corresponds with the type of chargeback submitted. |
| Sezzle order ID | The internal ID Sezzle has assigned to this order. |
| [Product type](#line-item-product-type) | Describes the type of merchant product (Affiliate, Gift card, Standard\_checkout, etc.) |
| Merchant identification number (MID) | The ID that identifies the merchant and the legitimacy of the business and facilitates the movement of funds from the customer’s bank account to the merchant’s bank account. |
| Card Network Auth Ref | A unique numeric or alphanumeric identifier assigned to credit card transactions, making it easier to locate and identify an individual credit card transaction. |
#### Line Item Type
| Type | Description | Type Code |
| ----------------------------------- | ----------------------------------------------------------------------------- | --------- |
| ORDER | A completed order with Sezzle. | 001 |
| REFUND | An order that has been refunded. | 002 |
| FEE | The fee assessed by Sezzle for a given order. | 003 |
| RETURNED\_FEE | A fee refunded by Sezzle. | 004 |
| CHARGEBACK | A chargeback resulting from a disputed order. | 005 |
| CHARGEBACK\_REVERSAL | A reversal of a chargeback resulting from a disputed order. | 006 |
| CORRECTION | A manual correction to a payout. | 007 |
| INTEREST\_TRANSFER | A transfer from the Sezzle interest account. | 008 |
| REFERRAL\_REVENUE\_TRANSFER | A payment earned from Sezzle's merchant referral program. | 009 |
| BANK\_ACCOUNT\_WITHDRAWAL | A withdrawal of funds from your bank to cover a negative balance with Sezzle. | 010 |
| BANK\_ACCOUNT\_WITHDRAWAL\_REVERSAL | A failed BANK\_ACCOUNT\_WITHDRAWAL. | 011 |
| CAPTURE | An order that has been captured. | 012 |
#### Line Item Product Type
| Type | Description |
| ------------------- | ------------------------------------------------- |
| standard\_checkout | Standard pay in four checkout |
| four\_pay\_monthly | 4 pay monthly order |
| six\_pay\_monthly | 6 pay monthly order |
| long\_term\_lending | Base long term lending product with no promotions |
| virtual\_card | Virtual card order |
# Delete webhooks
Source: https://docs.sezzle.com/docs/api/core/webhooks/deletev2webhooks
delete /v2/webhooks/{webhooks_uuid}
Delete webhooks to unsubscribe
This action cannot be undone, use with extreme caution
# List webhooks
Source: https://docs.sezzle.com/docs/api/core/webhooks/getv2webhooks
get /v2/webhooks
Get a list of webhooks you are subscribed to
### Valid Webhook Events
We accept the following Webhook events
| Event | Trigger |
| :--------------------------------- | :------------------------------------------------------------------ |
| `customer.tokenized` | A customer is tokenized |
| `order.authorized` | An order is authorized by Sezzle |
| `order.captured` | An order is captured by Sezzle |
| `order.refunded` | An order is refunded by Sezzle |
| `dispute.merchant_input_requested` | A dispute is filed by a shopper and merchant input is required |
| `dispute.deadline_approaching` | A dispute is moved to final notice by Sezzle |
| `dispute.closed.customer_win` | The shopper wins the dispute and the order is refunded |
| `dispute.closed.merchant_win` | The merchant wins the dispute and it is resolved in their favor |
| `dispute.closed.neutral` | No clear winner is determined and the dispute is resolved neutrally |
# Webhook Signature, Acceptance and Retries
Source: https://docs.sezzle.com/docs/api/core/webhooks/infov2webhooks
## Webhook Signature
* Secured with HMAC-SHA256 signature.
* Sezzle-Signature header contains a hash of the webhook body, generated using the merchant private key.
* Always verify the signature matches the webhook data to confirm it originates from Sezzle.
## Webhook Acceptance and Retries
* Considered delivered upon receiving an HTTP 200 Status OK response.
* Non-200 responses trigger retries:
* Multiple attempts in the first hour.
* A few attempts throughout the day.
* Final attempts one day and three days later, spanning five days total.
* If the final retry fails, the webhook subscription is deleted for all events.
* To resume receiving webhooks, recreate the webhook.
* Webhooks may not arrive in chronological order, as new ones can be sent before retries of older ones.
* Retried webhooks use the current merchant private key for signing, so the signature may differ from the original if the key has changed.
# Create webhooks
Source: https://docs.sezzle.com/docs/api/core/webhooks/postv2webhooks
post /v2/webhooks
This endpoint can be used to subscribe to webhooks
### Valid Webhook Events
We accept the following Webhook events
| Event | Trigger |
| :--------------------------------- | :------------------------------------------------------------------ |
| `customer.tokenized` | A customer is tokenized |
| `order.authorized` | An order is authorized by Sezzle |
| `order.captured` | An order is captured by Sezzle |
| `order.refunded` | An order is refunded by Sezzle |
| `dispute.merchant_input_requested` | A dispute is filed by a shopper and merchant input is required |
| `dispute.deadline_approaching` | A dispute is moved to final notice by Sezzle |
| `dispute.closed.customer_win` | The shopper wins the dispute and the order is refunded |
| `dispute.closed.merchant_win` | The merchant wins the dispute and it is resolved in their favor |
| `dispute.closed.neutral` | No clear winner is determined and the dispute is resolved neutrally |
### Webhook Request Payload
Unique identifier for the webhook event.
Timestamp (ISO 8601) when the event was generated.
Type of the event
Available options: `customer.tokenized`, `order.authorized`, `order.captured`, `order.refunded`, `dispute.merchant_input_requested`, `dispute.deadline_approaching`, `dispute.closed.customer_win`, `dispute.closed.merchant_win`, `dispute.closed.neutral`
Type of data associated with the event.
Available options: `customer`, `order`, `dispute`
Payload data specific to the event type. See options in the applicable accordion below.
#### Examples per Event
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"token": string,
"expiration": string,
"customer": {
"uuid": string,
"created_at": string,
"expiration": string
}
}
}
```
```json
{
"uuid": "e41c32d5-687d-414f-b5c6-d089bea52e7d",
"created_at": "2025-04-12T00:11:01.749261Z",
"event": "customer.tokenized",
"data_type": "tokenize",
"data": {
"token": "ce56604a-5dfd-489a-80e9-753d0325dd46",
"expiration": "2025-04-12T00:41:01.745145Z",
"customer": {
"uuid": "e0003e6a-7234-4440-9265-61906e8b8879",
"created_at": "2025-04-12T00:11:01.745145Z",
"expiration": "2026-04-12T00:11:01.745145Z"
}
}
}
```
The merchant request token.
The expiration date and time of the token.
The customer details associated with the token.
A unique identifier of the customer token.
The creation date and time of the token for the customer.
The expiration date and time of the token for the customer.
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"uuid": string,
"authorization": {
"uuid": string,
"created_at": string,
"authorization_amount": {
"amount_in_cents": integer,
"currency": string
},
"approved": boolean,
"expiration": string
}
}
}
```
```json
{
"uuid": "fdb263a1-a1dd-4feb-8749-c8a447977ebb",
"created_at": "2025-04-12T00:15:39.281826Z",
"event": "order.authorized",
"data_type": "order",
"data": {
"uuid": "f36605a0-4a96-46d1-9d01-a0b17140dc57",
"authorization": {
"uuid": "28ef487d-8398-43bb-8354-5ebdd1eb7b40",
"created_at": "2025-04-12T00:15:39.276841Z",
"authorization_amount": {
"amount_in_cents": 5000,
"currency": "USD"
},
"approved": true,
"expiration": "2025-04-12T00:45:39.276841Z"
}
}
}
```
The unique identifier for the order.
Contains the authorization response details.
The unique identifier for the authorization.
ISO 8601 timestamp when the authorization was created.
Amount and currency details of the authorized transaction.
Authorized amount in cents.
ISO 4217 currency code (e.g., USD).
Indicates whether the authorization was approved.
ISO 8601 timestamp when the authorization will expire.
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"uuid": string,
"capture": {
"uuid": string,
"created_at": string,
"amount": {
"amount_in_cents": integer,
"currency": string
}
}
}
}
```
```json
{
"uuid": "6ee025c6-8acf-48fe-a6d6-b51693d64c60",
"created_at": "2025-04-12T00:20:07.44668Z",
"event": "order.captured",
"data_type": "order",
"data": {
"uuid": "b87305a1-6be3-4877-bcf0-2b5b7dfaeaf0",
"capture": {
"uuid": "b69b1ba8-e977-4f26-9253-06f14d941696",
"created_at": "2025-04-12T00:20:07.438365Z",
"amount": {
"amount_in_cents": 3000,
"currency": "USD"
}
}
}
}
```
The unique identifier for the order.
Contains the capture transaction details.
The unique identifier for the capture.
ISO 8601 timestamp when the capture was created.
Amount and currency details of the capture.
Captured amount in cents.
ISO 4217 currency code (e.g., USD).
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"uuid": string,
"refund": {
"uuid": string,
"created_at": string,
"amount": {
"amount_in_cents": integer,
"currency": string
}
}
}
}
```
```json
{
"uuid": "ed89f046-f55e-4fdd-9f65-ec3d8e961f99",
"created_at": "2025-04-12T00:24:39.809499Z",
"event": "order.refunded",
"data_type": "order",
"data": {
"uuid": "b69f882d-06c3-4f2e-b6e3-ce7a6c46e455",
"refund": {
"uuid": "479e9d25-d0a5-49df-a2d3-6ca1d75b8c57",
"created_at": "2025-04-12T00:24:39.805651Z",
"amount": {
"amount_in_cents": 500,
"currency": "USD"
}
}
}
}
```
The unique identifier for the order.
Contains the refund transaction details.
The unique identifier for the refund.
ISO 8601 timestamp when the refund was created.
Amount and currency details of the refund.
Refunded amount in cents.
ISO 4217 currency code (e.g., USD).
The following applies to the following webhooks:
* `dispute.merchant_input_requested`
* `dispute.deadline_approaching`
* `dispute.closed.customer_win`
* `dispute.closed.merchant_win`
* `dispute.closed.neutral`
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"customer_name": string,
"order_uuid": string,
"order_reference_id": string,
"order_date": string,
"dispute_type": string,
"dispute_due_date": string,
"dispute_id": integer,
"dispute_amount_in_cents": integer,
"dispute_currency": string,
"dispute_status": string
}
}
```
```json
{
"uuid": "79f1e9cd-f1ef-42fa-b7b4-2ed8d9e9fae8",
"created_at": "2025-04-11T17:22:22.717757Z",
"event": "dispute.merchant_input_requested",
"data_type": "dispute",
"data": {
"customer_name": "John Doe",
"order_uuid": "e17280f3-d575-4bc2-99ff-ff881df7b137",
"order_reference_id": "order-reference-id-123",
"order_date": "2024-08-20",
"dispute_type": "No Product Or Service",
"dispute_due_date": "2025-04-08",
"dispute_id": 132,
"dispute_amount_in_cents": 2500,
"dispute_currency": "USD",
"dispute_status": "Closed All Win"
}
}
```
The name of the customer who filed the dispute.
The unique identifier for the disputed order.
The reference ID of the order
The ISO 8601 date (YYYY-MM-DD) when the order was placed.
The category or reason for the dispute (e.g., "No Product Or Service").
The deadline (ISO 8601 date) for merchant response or dispute action.
The unique ID for the dispute
The price of the dispute in cents
ISO 4217 currency code (e.g., USD).
The status of the dispute
Available options: `Awaiting Merchant Response`, `Merchant Final Notice`, `Closed Merchant Loss`, `Closed Customer Loss`, `Closed All Win`
# Trigger a test webhook
Source: https://docs.sezzle.com/docs/api/core/webhooks/postv2webhooktest
post /v2/webhooks/test
Trigger a test event to mimic a webhook event at a given URL.
### Valid Webhook Events
We accept the following Webhook events
| Event | Trigger |
| :--------------------------------- | :------------------------------------------------------------------ |
| `customer.tokenized` | A customer is tokenized |
| `order.authorized` | An order is authorized by Sezzle |
| `order.captured` | An order is captured by Sezzle |
| `order.refunded` | An order is refunded by Sezzle |
| `dispute.merchant_input_requested` | A dispute is filed by a shopper and merchant input is required |
| `dispute.deadline_approaching` | A dispute is moved to final notice by Sezzle |
| `dispute.closed.customer_win` | The shopper wins the dispute and the order is refunded |
| `dispute.closed.merchant_win` | The merchant wins the dispute and it is resolved in their favor |
| `dispute.closed.neutral` | No clear winner is determined and the dispute is resolved neutrally |
# Environments
Source: https://docs.sezzle.com/docs/api/environments
Before going live, you may test your integration with Sezzle using the Sezzle sandbox test environment, rather than the live production environment.
## **Accessing Sandbox and Production Environments**
* A merchant who registers for a Sezzle production account automatically receives sandbox access
* Default admin users of the production dashboard can also access the sandbox dashboard
* Merchants can create a standalone sandbox account without a production account, ideal for testing production features without becoming a Sezzle merchant (e.g., during system integration)
## Testing Your Integration
1. Access the [sandbox](https://sandbox.dashboard.sezzle.com/merchant)
2. Log in using your Sezzle Merchant dashboard credentials
3. From the menu at the left select `Settings` > `API Keys`
4. Click the button labeled `create API key`
5. Follow the prompts to create public and private API keys
* The same login can be used for both sandbox and production dashboards.
* API keys for sandbox and production are not interchangeable:
* Sandbox API keys cannot be used in the production dashboard.
* Production API keys cannot be used in the sandbox.
* The sandbox gateway URL is [https://sandbox.gateway.sezzle.com](https://sandbox.gateway.sezzle.com).
6. Start a checkout on your store website
7. Select `Sezzle` as the payment method
8. Complete the Sezzle checkout using the [test data](/docs/api/test-cards)
9. Verify that the order goes through
Refer to [Postman Setup section](./postman-setup.mdx) on how to progmatically create orders and more leveraging [Sezzle Core API](/docs/api/core).
# Errors
Source: https://docs.sezzle.com/docs/api/errors
Endpoints will return an array of standardized error objects on failures.
We attempt to keep these errors as consistent as possible, and will announce any changes in advance if they are required.
## Error Response
```json
[
{
"code": string,
"location": string,
"message": string,
"debug_uuid": string
}
]
```
```json
[
{
"code": "invalid",
"location": "order.amount.amount_in_cents",
"message": "Order amount must be greater than $35",
"debug_uuid": "919f40d0-874b-4d98-810d-ed2246a8ad77"
}
]
```
Error code
Where the error occurred
Message describing why error occured
UUID identifying error
# Introduction
Source: https://docs.sezzle.com/docs/api/intro
* Sezzle supports individually-authorized transactions for single purchases, with the latest version enabling customer tokenization for future transactions.
* Integration options include:
* Direct API integration
* Lightweight JavaScript SDK
* Integrations with popular eCommerce platforms
* [Contact the Sezzle team](https://merchant-help.sezzle.com/hc/en-us/requests/new) for API-related questions.
* An approved Sezzle account is required to start integration; [sign up](https://dashboard.sezzle.com/merchant/signup) if you don’t have one.
Assume that all API methods require an [Authorization bearer token](./core/authentication/postauthentication#authenticated-call-http-header).
## Direct Integration Quick Start
1. Use API keys to obtain an [authentication token](./core/authentication/postauthentication)
2. [Create a session](./core/sessions/postv2session) with an [order object](./core/sessions/postv2session#body-order)
3. Redirect user to Sezzle checkout URL
4. User completes Sezzle checkout
5. Sezzle redirects user back to [merchant complete URL](./core/sessions/postv2session#body-complete-url)
6. Manage the order with the [Order API](./core/orders/getv2order)
## Open API Specification
* The [OpenAPI Specification (OAS)](https://swagger.io/specification/) offers a standard, language-independent interface for RESTful APIs, allowing humans and machines to understand service capabilities without source code, documentation, or network traffic analysis.
* Access the [Sezzle v2 OpenAPI Specification](https://gateway.sezzle.com/v2api.yaml) for integration details.
* Import the Sezzle v2 OpenAPI Specification into the [Swagger Editor](https://editor.swagger.io/?url=https://gateway.sezzle.com/v2api.yaml) to generate a Sezzle client in multiple programming languages.
* For languages unsupported by Swagger, use [OpenAPI Generator](https://openapi-generator.tech/) as an alternative tool.
# Postman Setup
Source: https://docs.sezzle.com/docs/api/postman-setup
The Sezzle team has prepared a public Postman collection so merchants can quickly create customers (Sezzle users), sessions, and orders for sandbox testing.
### Download and Install Postman
1. Go to [postman.com/downloads](https://www.postman.com/downloads)
2. Click `Download the App`
3. When the installation file has finished downloading, click the file to install the application
4. Follow installation prompts on the screen
### Add Sezzle Gateway Collection
When installation is complete, follow these steps to add the Sezzle Gateway collection to Postman.
1. Click `Run in Postman` below to run the collection
[](https://god.gw.postman.com/run-collection/9737967-e6ff8257-718a-4206-b6f0-7540e3b97060?action=collection%2Ffork\&collection-url=entityId%3D9737967-e6ff8257-718a-4206-b6f0-7540e3b97060%26entityType%3Dcollection%26workspaceId%3Dcf7fd793-2599-4aed-9b55-0871e7b27e1a)
2. In the Web page that opens, select your operating system
3. Click `Open Postman` if prompted
4. In Postman, the Sezzle Gateway collection is now displayed in the Collections tab
### Edit collection variables
Next, copy your API Keys from the Sezzle Sandbox Dashboard into Postman.
1. In Postman, select Sezzle Gateway to open the collection tab
2. In the collection tab, click Variables. This tab will store your credentials that apply across the collection
* Alternatively, move the API Keys and Gateway URL variables to your sandbox environment variables
3. To access your credentials, log in to the [Sezzle Sandbox Dashboard](https://sandbox.dashboard.sezzle.com/merchant/)
4. Go to `Settings` > `API Keys` - your sandbox credentials are [here](https://sandbox.dashboard.sezzle.com/merchant/settings/apikeys)
5. In Postman, paste your credentials into `CURRENT VALUE`
* Do this for `PublicAPIKey` and `PrivateAPIKey`
The other collection variables are predefined and all additional values will be automatically assigned for smoother testing.
### Using the collection
1. Open the applicable folder for your API version (default V2)
2. Refer to the below diagrams for request sequencing
V1 Gateway Request Flow
V2 Gateway Request Flow
3. Once a session is created, you must visit the checkout\_url in the response and complete the checkout before testing most other Orders endpoints.
* Log in at sandbox.dashboard.sezzle.com/customer
* The customer account does not need to match the customer details given in the session payload
* The phone number for the customer account must be real, but other personal information can be fake
* OTP will be `123123`
# Test Data
Source: https://docs.sezzle.com/docs/api/test-cards
Test data is important to use in our Sandbox environment because it offers a way to use reliable forced responses.
## Phone and Personal Information
* Use any valid US or CA phone number, real or fake
* The expected OTP is `123123`
* Personal information does not need to be real
## Test Credit Cards
| Brand | Number | CVC | Expiration |
| ---------- | ---------------- | ------------ | --------------- |
| Visa | 4242424242424242 | Any 3 digits | Any future date |
| Mastercard | 5555555555554444 | Any 3 digits | Any future date |
| Amex | 371449635398431 | Any 4 digits | Any future date |
| Amex | 378282246310005 | Any 4 digits | Any future date |
| Discover | 6011111111111117 | Any 3 digits | Any future date |
## Checkout Testing
* Use your [sandbox API keys](https://sandbox.dashboard.sezzle.com/merchant/settings/apikeys) when testing in a test environment
* Use your [production API keys](https://dashboard.sezzle.com/merchant/settings/apikeys) when testing in a live environment
1. On your website, add an item to your cart, then proceed to Checkout and select `Sezzle` as the payment method
2. Click `Place Order`
If you are redirected to the Sezzle checkout page, your integration is complete.
3. In sandbox, use the above test data to complete the Sezzle checkout and you should be redirected back to your website
In production, **BE CAREFUL** when completing the Sezzle checkout, as you will be charged. You can identify the Sezzle environment by observing if "sandbox" is included in the Sezzle checkout URL.
# Delete a customer
Source: https://docs.sezzle.com/docs/api/tokenization/customers/deletev2token
delete /v2/customer/{customer_uuid}
Delete an existing tokenized customer
# Get a customer
Source: https://docs.sezzle.com/docs/api/tokenization/customers/getv2customer
get /v2/customer/{customer_uuid}
Get details on an existing tokenized customer
# Get a list of customers
Source: https://docs.sezzle.com/docs/api/tokenization/customers/getv2customerlist
get /v2/customer
Retrieve a list of existing tokenized customers
# Create order by customer
Source: https://docs.sezzle.com/docs/api/tokenization/customers/postv2customerorder
post /v2/customer/{customer_uuid}/order
Create an order for a tokenized customer
It is extremely important to note this API will return a 200 success if the request to create an order is successful (i.e. no errors) but the customer could not be approved for the order.
**Note:** If you plan to tokenize a customer for the purpose of creating orders by a customer, please be advised that these orders will not include any financing options.
# Preapprove amount by customer
Source: https://docs.sezzle.com/docs/api/tokenization/customers/preapprovev2token
post /v2/customer/{customer_uuid}/preapprove
Verify tokenized customer will be approved for the amount of the order prior to order creation.
This API does not authorize the amount nor does it hold the amount for a future order.
Also, you are not required to use this API before creating a customer order.
An example use-case is to verify approval status ahead of subscription payment due date, and to contact the customer in advance to avoid failed payment.
# Introduction
Source: https://docs.sezzle.com/docs/api/tokenization/intro
Customer tokenization allows merchants to store Sezzle as a payment method for future orders without customer interaction, ideal for subscriptions like semi-annual charges.
All tokenized orders will be processed as Pay in Full.
The approval URL was deprecated in April 2025. Now, the only way for customers to authorize you to process future transactions on tokenized orders is by selecting that option in the initial checkout process.
To obtain that authorization:
1. Initiate and tokenize the order in a single session
2. Redirect the customer to the checkout URL
For detailed instructions, view the Tokenization Process below.
## Tokenization Process

1. Tokenize Customer via Checkout
* The merchant calls `/v2/session` with `tokenize: true`, optionally including customer details to speed up registration for new Sezzle users.
* Sezzle returns a session `tokenize` token.
2. Merchant Redirects User to Checkout URL
* Customer sees option to allow merchant to process payments from their Sezzle account for future transactions.
* The customer may decide to allow this permission before completing their checkout.
The only way for customers to authorize you to process future transactions on tokenized orders is by selecting that option in the initial checkout process.

* If agreed, Sezzle redirects back to the merchant’s session complete URL, appending a `customer-uuid` query parameter.
* Alternatively, the merchant can call `/v2/token` with the session tokenize token to retrieve the UUID.
3. Charge Customer
* The merchant uses the `customer-uuid` to create orders via `/v2/customer/{customer_uuid}/order`.
* If the authorization is approved, the merchant can manage the order (release, capture, or refund) using `/v2/order` endpoints.
## Notes
* Tokenization is optional, recommended only for charging via Sezzle outside standard checkouts.
* Orders created via customer UUID are treated the same as those from a standard Sezzle checkout.
## Customers
Use the customers endpoints to:
* [Delete](/docs/api/tokenization/customers/deletev2token) a customer
* [Get](/docs/api/tokenization/customers/getv2customer) details on an existing customer
* [Get](/docs/api/tokenization/customers/getv2customerlist) a list of customers
* [Create](/docs/api/tokenization/customers/postv2customerorder) an order for a customer
* [Preapprove](/docs/api/tokenization/customers/preapprovev2token) an amount for the customer
Customers are only those Sezzle users that have agreed to be tokenized by the merchant. A customer is unique to a merchant. This API does not include all Sezzle users.
# Get session tokenization
Source: https://docs.sezzle.com/docs/api/tokenization/session/getv2sessiontoken
get /v2/token/{token}/session
Get the current state of a tokenization session.
# Complete a Checkout
Source: https://docs.sezzle.com/docs/api/v1/complete-a-checkout
post /v1/checkouts/{order_reference_id}/complete
Initiate order payment capture if `merchant_completes` was `true` at Create Checkout.
An example use-case is if users need to return to the merchant's site before finalizing the purchase with Sezzle.
Submit the Complete Checkout request within 30 minutes after the user is redirected to the merchant's site. Failure to do so results in Sezzle canceling the checkout.
The default expiration period for new orders can be extended up to 7 days via the Merchant Dashboard.
# Create a Checkout
Source: https://docs.sezzle.com/docs/api/v1/create-a-checkout
post /v1/checkouts
Initiate a Sezzle session with shopper order details, redirect links, and capture settings
# Interest Account Activity Request
Source: https://docs.sezzle.com/docs/api/v1/interest-account-reports/interest-account-activity-request
get /v1/interest/activity
If you are enrolled in the interest account program, get the current activity on the interest account.
# Interest Account Balance Request
Source: https://docs.sezzle.com/docs/api/v1/interest-account-reports/interest-account-balance-request
get /v1/interest/balance
If you are enrolled in the interest account program, get the current balance on the interest account. Fractions of cents are tracked to properly calculate daily interest accrual even if the interest balance is low.
# Obtain Authentication Token
Source: https://docs.sezzle.com/docs/api/v1/obtain-authentication-token
post /v1/authentication
Generate authentication token from your Sezzle merchant API keys for use in the header of all other API requests.
# Orders
Source: https://docs.sezzle.com/docs/api/v1/orders
get /v1/orders/{order_reference_id}
Get details and check the status of an existing order
# Refund Request
Source: https://docs.sezzle.com/docs/api/v1/refund-request
post /v1/orders/{order_reference_id}/refund
Refund an amount by order, either partial or in full. An example use-case is when an order was captured but the customer returned item(s) that requires them to be refunded.
# Setting Your Configuration
Source: https://docs.sezzle.com/docs/api/v1/setting-your-configuration
post /v1/configuration
Configure webhook URL
## Webhooks
### Order Webhooks
* Sezzle handles most of the consumer checkout process on its pages, using webhooks to notify your system about:
* Checkout updates
* Completions
* Refunds
* Use the instructions in this page to subscribe to Webhooks
* When a webhook event occurs, Sezzle will send the below Webhook object to the URL provided in the configuration
### Order Webhook Object
```json
{
"time": string,
"uuid": string,
"type": string,
"event": string,
"object_uuid": string,
"refund_id": string,
"refund_amount": {
"amount_in_cents": number,
"currency": string
}
}
```
```json
{
"time": "2017-10-19T00:33:10.548372055Z",
"uuid": "02c5a2a0-8394-4b45-80b3-52d40c494322",
"type": "order_update",
"event": "order_complete",
"object_uuid": "Ref123456789",
"refund_id": "szl-a0293Pn-3948-80b3-ao34JAia39zQ",
"refund_amount": {
"amount_in_cents": 500,
"currency": "USD"
}
}
```
The time (UTC) at which the Webhook was generated.
A unique identifier for the webhook.
The high-level category.
Available options: `order_update` (coming soon)
The ID for the Checkout/Order.
Available options: `order_complete`, `order_refund`
The ID for the Checkout/Order. For order update webhooks, the `object_uuid` returned is the reference ID provided during checkout creation by the merchant
Unique ID for a refund. Included if the webhook event is order\_refund
Price object. Included if the webhook event is order\_refund.
The amount in cents
The 3 character currency code as defined by ISO 4217
# Settlement Details Request
Source: https://docs.sezzle.com/docs/api/v1/settlement-reports/settlement-details-request
get /v1/settlements/details/{payout_uuid}
Get details on a specific settlement payout.
The settlement details response contains two sections. The first two rows are a summary of the payout. The remaining rows contain the individual line items that contributed to the payout.
### Summary Column Definitions
| Column Header | Description |
| ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `Total order amount` | The sum of all orders on this payout. |
| `Total refund amount` | The sum of all refunds on this payout. |
| `Total fee amount` | The sum of all fees on this payout. |
| `Total returned fee amount` | The sum of all returned fees on this payout. |
| `Total chargeback amount` | The sum of all chargebacks on this payout. |
| `Total chargeback reversal amount` | The sum of all chargeback reversals on this payout. |
| `Total interest transfer amount` | The sum of all interest transfers on this payout. If you are not participating in the interest program, this field will be omitted. |
| `Total correction amount` | The sum of all corrections on this payout. |
| `Total referral revenue transfer amount` | The sum of all referral revenue transfers on this payout. |
| `Total bank account withdrawal amount` | The sum of all bank account withdrawals. |
| `Total bank account withdrawal reversal amount` | The sum of all bank account withdrawal reversals, which reflect a bank account withdrawal that has failed. |
| `Forex fees` | The cost of foreign exchange fees associated with this payout. |
| `Net settlement amount` | Net amount of settlement. |
| `Payment uuid` | The UUID for this payout. |
| `Settlement currency` | The currency in which this payout was sent. |
| `Payout date` | The date this payout was sent. |
| `Payout status` | The current status of this payout. |
### Line Item Column Definitions
| Column Header | Description |
| ----------------------- | ----------------------------------------------------------------------------------------------------- |
| `Type` | Describes the type of event (Order, Fee, Refund, etc.). |
| `Order capture date` | The date at which the order was captured. This field is empty if the order has not yet been captured. |
| `Order created at` | The date at which the order was created. |
| `Event date` | The date at which the event took place. |
| `Order uuid` | The uuid associated with the order. |
| `Customer order id` | The customer's order number. |
| `External reference id` | The external reference ID submitted with the order. |
| `Amount` | The amount of the event. |
| `Posting currency` | The customer's currency code. |
| `Type code` | A numeric code that corresponds with the Type field. |
| `Chargeback code` | A numeric code that corresponds with the type of chargeback submitted. |
| `Sezzle order ID` | The internal ID Sezzle has assigned to this order. |
### Line Item Event Type Definitions
| Type | Description | Type Code |
| ---------------------------------- | ----------------------------------------------------------------------------- | --------- |
| `ORDER` | A completed order with Sezzle. | 001 |
| `REFUND` | An order that has been refunded. | 002 |
| `FEE` | The fee assessed by Sezzle for a given order. | 003 |
| `RETURNED_FEE` | A fee refunded by Sezzle. | 004 |
| `CHARGEBACK` | A chargeback resulting from a disputed order. | 005 |
| `CHARGEBACK_REVERSAL` | A reversal of a chargeback resulting from a disputed order. | 006 |
| `CORRECTION` | A manual correction to a payout. | 007 |
| `INTEREST_TRANSFER` | A transfer from the Sezzle interest account. | 008 |
| `REFERRAL_REVENUE_TRANSFER` | A payment earned from Sezzle's merchant referral program. | 009 |
| `BANK_ACCOUNT_WITHDRAWAL` | A withdrawal of funds from your bank to cover a negative balance with Sezzle. | 010 |
| `BANK_ACCOUNT_WITHDRAWAL_REVERSAL` | A failed BANK\_ACCOUNT\_WITHDRAWAL. | 011 |
# Settlement Summaries Request
Source: https://docs.sezzle.com/docs/api/v1/settlement-reports/settlement-summaries-request
get /v1/settlements/summaries
Get a summarized list of settlement payouts.
# v1 Overview
Source: https://docs.sezzle.com/docs/api/v1/v1
You are viewing Version 1 of the Sezzle API. Check out the [current version](/docs/api/intro)!
* Sezzle API v1 is designed for merchants wanting to accept Sezzle as a payment option.
* The Sezzle [Integration Flow](#integration-flow) outlines the user payment interaction process.
* Sezzle supports individually authorized transactions for single purchases of goods or services.
* An approved Sezzle account is required to begin integration; visit the [signup page](https://dashboard.sezzle.com/merchant/signup) to create one if needed.
## Testing
While you are working on the integration, you should test it in a sandbox environment before going live.
### Sandbox
**API Endpoint** `https://sandbox.gateway.sezzle.com/v1`\
**Sandbox Dashboard** `https://sandbox.dashboard.sezzle.com/merchant`
Credentials to log in to the sandbox dashboard are the same ones you use to log in to the Sezzle Merchant Dashboard. You can create your test API keys in the [sandbox dashboard](https://sandbox.dashboard.sezzle.com/merchant/settings/apikeys).
### Test Data
You can use the following test data to test your integration:
| Bank | Username | Password |
| ----------- | -------- | -------- |
| `Test Bank` | `demo` | `go` |
| Card Number | CVV/CVC | Expiration Data | Name | Address |
| ------------------ | ----------------- | --------------- | ----- | ------- |
| `4242424242424242` | `any (3 numbers)` | `any` | `any` | `any` |
### Phone and other information
* Please use any valid phone number
* The expected `OTP` is `123123`
* Personal information does not need to be real
## Open API Specification
* The [OpenAPI Specification (OAS)](https://swagger.io/specification/) offers a standard, language-independent interface for RESTful APIs, allowing humans and machines to understand service capabilities without source code, documentation, or network traffic analysis.
* Access the [Sezzle v2 OpenAPI Specification](https://gateway.sezzle.com/v2api.yaml) for integration details.
* Import the Sezzle v2 OpenAPI Specification into the [Swagger Editor](https://editor.swagger.io/?url=https://gateway.sezzle.com/v2api.yaml) to generate a Sezzle client in multiple programming languages.
* For languages unsupported by Swagger, use [OpenAPI Generator](https://openapi-generator.tech/) as an alternative tool.
## Integration Flow

### Payment Flow Explanation
1. Merchant calls `/v1/checkouts` to send cart data to Sezzle
2. Sezzle returns URL to redirect consumer to make payment at Sezzle checkout
3. Merchant redirects the consumer to Sezzle
4. When the consumer completes the Sezzle checkout flow, they are redirected back to merchant's website
5. Alternatively, on approval, the consumer is redirected from Sezzle checkout to merchant's website and merchant captures the order by calling `/v1/complete`
### Refund Request
| Parameter | Type | Description |
| ---------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `amount*` | object | A price object that defines the amount to be refunded. Amount may not be 0, negative, or exceed the total order amount. Currency must either be the order's currency or the customer's paying currency. This field is optional if the `is_full_refund` parameter is true. |
| `refund_id` | string | UUID for the Refund. Must be unique to a Merchant. |
| `refund_reason` | string | A reason for the refund. |
| `is_full_refund` | boolean | Overrides `amount`. If true, the order will be fully refunded. If omitted, will default to false |
## Javascript SDK
The Javascript SDK is documented in the latest [API v2 documentation](/#javascript-sdk). It is supported for users of the v1 API using the same loadable page script.
When using the Javascript SDK with v1, use apiVersion: "v1" in the Checkout constructor.
### Create a Checkout
```javascript
checkout.startCheckout({
checkout_payload: {
"amount_in_cents": 12999,
"currency_code": "USD",
"order_reference_id": "Ref123456789",
"order_description": "Order #1800",
}
});
```
* Using the Javascript SDK with v1:
* Create a checkout with the Checkout Object.
* Complete the checkout using the Complete a Checkout endpoint.
* The v1 endpoint:
* Captures the total order amount.
* Does not require a request body.
* Do not use the payload object shown in the example capture for v1.
### Complete a Checkout
```javascript
checkout.capturePayment("Ref123456789");
```
## Widget SDK
* The Widget SDK loads Sezzle sales widgets onto web pages.
* Widgets require a config to be provided before the script loads, or they will not display.
* The project repository is available at [https://github.com/sezzle/sezzle-js](https://github.com/sezzle/sezzle-js).
* Refer to the latest documentation for widget configuration details.
# About Sezzle Page
Source: https://docs.sezzle.com/docs/guides/about-sezzle
Including a dedicated page about Sezzle on your website helps customers understand how Sezzle works and highlights the benefits of using it as a payment option. We provide a pre-made HTML template to simplify the process. To get started:
1. Select your website platform
2. Copy the code from the "Code Snippets" section and integrate it into your site to create the page
To see a sample of what the page looks like, click [here](https://sezzle-test.myshopify.com/pages/how-sezzle-works).
## Shopify Process
To set up the page on Shopify, follow the steps below.
1. Log in to your Shopify Store
2. Navigate to `Online Store` > `Themes`
3. On the theme you want to edit, select `Actions` and then `Edit Code`
4. Under the `Templates` folder, click `Add New Template`, select template for `Page`, template type `liquid`, and name the page `Sezzle`, then click `Create Template`
5. Select the theme that best fits your store from the tabs listed
6. Copy the code and paste it under `{{page.content}}` on the Shopify page
7. Save
8. Navigate to `Pages`
9. Add a new page, and give it a title - we recommend something like `How Sezzle Works` or `How to use Sezzle`
10. Under `Theme Template` (in the bottom-right), select `sezzle`
11. Save and view the page
## Add the page to your navigation
1. Go to `Online Store` > `Navigation`
2. Select the menu where you would like the Sezzle link to appear (ex: Main menu)
3. Click `Add menu item`
4. Enter the text you wish to appear (ex: How Sezzle Works)
5. Click the second box, select `Pages` then the page you just created
6. Click `Add`
7. Click `Save Menu`
## Other Platforms
To set up the page on any other platform, please work with your web developer and/or follow the steps below.
1. Create a new page in your theme
2. Copy and paste the code into your website's page
3. Click save and/or publish!
## Code Snippet
Insert the following code into your HTML file:
```html [expandable]
```
```html [expandable]
```
Your merchant ID which is of the format: `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` [Find it here](https://dashboard.sezzle.com/merchant/settings/business).
Renders the page design in dark or light mode
Available options: `dark`, `light`
Controls the translation of the page content
Available options: `en`, `fr`
# AI Assistance
Source: https://docs.sezzle.com/docs/guides/ai-assistance
All of our documentation pages are hosted in a variety of markdown formats to make it easier for you to feed our docs into large language models (LLMs) for specific information retrieval.
## Supported formats
We support industry standards such as [/llms.txt](https://llmstxt.org) as well as additional markdown formats.
* A markdown file of a structured index of our docs is hosted at [https://docs.sezzle.com/llms.txt](https://docs.sezzle.com/llms.txt).
A markdown file of our docs content is hosted at [https://docs.sezzle.com/llms-full.txt](https://docs.sezzle.com/llms-full.txt).
# Authorize & Capture
Source: https://docs.sezzle.com/docs/guides/auth-and-capture
Merchants integrating Sezzle into their eCommerce platform can choose between two payment settings: `Authorize Only` or `Authorize and Capture`. This page provides a detailed explanation of the differences between these options to help you select the best setting for your needs.
### **Authorize Only**
* Payment will only be automatically authorized, not captured, after a successful checkout
* In the History section of order details, the `Captured` field displays 0, and `Not Captured` displays the order amount
* If `Authorize Only` is set, you must capture the order amount manually before the auth is expired in order to mark the payment as paid
### **Authorize and Capture**
* Payment is captured automatically after a successful checkout.
* In the `History`section of order details, the `Captured` field displays the order amount, and `Not Captured` displays 0
### Notes
* The default authorization expiration is 30 minutes for all merchants except Shopify, whose default is 7 days
* You can extend this up to a maximum of 7 days
* Once the authorization expires, capturing is denied, and any uncaptured amount is released
* If the order total is not captured before expiration, the order is deleted
* Payment is considered paid only when the amount is captured
* If the order amount shows `Not Captured` and the `Captured` value in the `History` section of the Merchant Dashboard is 0, the order amount has not been captured
* If the amount remains uncaptured before the authorization expires, the order will be deleted
### How to Change Authorization Expiration in Merchant Dashboard
1. Log in to your Merchant Dashboard account
2. Go to the `Settings` > `Payment Captures` > `Authorization Expiration Period` and click `update`
3. Set the value for days, hours, and minutes and click `confirm`
# Using Direct Javascript SDK
Source: https://docs.sezzle.com/docs/guides/direct/integration
The Javascript SDK can be used for a simple, lightweight integration, but it also includes an in-context mode which will host the Sezzle checkout in a modal iframe or pop-up window.
Create checkouts and capture payments with Sezzle.
Checkout in an iframe, pop-up window, or redirect to Sezzle.
Handle payment success, failure, or cancel with your Sezzle orders.
Render the Sezzle checkout button on your store.
## Include SDK code
Include the following script in the `
` section of the page.
```html
```
## Checkout Configuration
The first requirement to get started with the direct JavaScript SDK is to configure a new Checkout object.
### Configuration Options
```javascript
const checkoutSdk = new Checkout({
mode: string,
publicKey: string,
apiMode: string,
apiVersion: string,
});
```
```javascript
const checkoutSdk = new Checkout({
mode: "popup",
publicKey: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
apiMode: "sandbox",
apiVersion: "v2",
});
```
Available options: `popup`, `iframe`, `redirect`
**popup** mode will work out-of-the-box. No additional configuration is required to use **popup**. Sezzle currently recommends **popup** mode.
**iframe** mode will not work properly without first contacting Sezzle. For security reasons, Sezzle must enable **iframe** for your domain(s). To have it enabled, please submit a request with your Sezzle Merchant UUID and a list of domains to be allowed per environment (production and sandbox). For example, [*please enable uat1.mysite.com, uat2.mysite.com in sandbox and www.mysite.com, mysite.com in production*](http://www.mysite.com).
The integration for **popup** and **iframe** are identical, aside from the mode. Using **popup** mode will expedite your development. Upon completing the integration, if **iframe** is a requirement, then contact Sezzle to enable your domain(s) and switch the mode to **iframe**.
Used when creating a checkout or capturing payment. Find your API keys at [https://dashboard.sezzle.com/merchant/settings/apikeys](https://dashboard.sezzle.com/merchant/settings/apikeys)
Environment in which the checkout is to be completed
Available options: `live`, `sandbox`
Sezzle Checkout SDK Version
Available options: `v2`
## Sezzle Button
### Sezzle Button Configuration
Create a placeholder element for the Sezzle Button to be rendered on the page(s).
```html
```
```html
```
Text to appear inside the button. Use `%%logo%%` inside the text to
display the Sezzle image
Available options: `square`, `semi-rounded`
Custom classes to be applied
Negative space between top of content and edge of button
Negative space between bottom of content and edge of button
Negative space between left side of content and edge of button
Negative space between right side of content and edge of button
Width of the Sezzle logo within the button
Position of the Sezzle logo from top.
Position of the Sezzle logo from bottom.
Position of the Sezzle logo from left.
Position of the Sezzle logo from right.
Spacing between the templateText letter.
Width of the button
Height of the button.
### Render the Sezzle Button
Requires having the `checkout` object created from above to render the button. Call `renderSezzleButton` passing the `id` of the placeholder element defined in Button Configuration, above.
```javascript
checkoutSdk.renderSezzleButton("sezzle-smart-button-container");
```
## Initialize the Checkout
### Event Handlers
The SDK requires the following event handlers that can be used to extend features in your application.
```javascript
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({...});
},
onComplete: function (event) {
console.log(event.data);
},
onCancel: function () {
console.log("Checkout cancelled.");
},
onFailure: function () {
console.log("Checkout failed.");
},
});
```
```javascript [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({
checkout_payload: {
order: {
intent: "AUTH",
reference_id: "543645yg5tg5675686",
description: "sezzle-store - #12749253509255",
order_amount: {
amount_in_cents: 10000,
currency: "USD",
},
},
},
});
},
onComplete: function (event) {
console.log(event.data);
},
onCancel: function () {
console.log("Checkout cancelled.");
},
onFailure: function () {
console.log("Checkout failed.");
},
});
```
Sezzle Button is clicked by the user.
See [Checkout Initialization](#checkout-initialization) section for payload options.
Sezzle payment is successfully completed. A successfully completed Sezzle checkout will trigger an event to the `onComplete` handler. The event should include a data object with data relevant to the start checkout input parameter.
Sezzle payment is cancelled. If the user exits the Sezzle checkout for any reason, the `onCancel` handler will be executed.
Sezzle payment has failed. If there is an error loading the Sezzle checkout page, the `onFailure` handler will be executed.
### Checkout Initialization
```javascript
checkoutSdk.startCheckout({
checkout_payload: {
order: {
intent: string,
reference_id: string,
description: string,
order_amount: {
amount_in_cents: integer,
currency: string,
},
},
},
});
```
```javascript
checkoutSdk.startCheckout({
checkout_payload: {
order: {
intent: "AUTH",
reference_id: "543645yg5tg5675686",
description: "sezzle-store - #12749253509255",
order_amount: {
amount_in_cents: 10000,
currency: "USD",
},
},
},
});
```
The order for this session
If your checkout flow requires the user to confirm their checkout on your site after being approved by Sezzle, use “AUTH” as your intent. If you prefer the checkout be captured immediately, use “CAPTURE”.
Available options: `AUTH`, `CAPTURE`
Your reference ID for this order (must contain only alphanumeric characters, dashes (-), and underscores (\_))
Your description for this order
The total amount of the order
The amount of the item in cents
The 3 character currency code as defined by ISO 4217
Alternatively, start checkout by URL:
```javascript
checkout.startCheckout({
checkout_url: "https://checkout.sezzle.com/?id=example",
});
```
Start checkout should be implemented in the checkout `onClick` handler. There are two methods for hosting a checkout.
**Use a checkout payload as detailed in the Session Object**
* The cancel and complete URLs are not required for `iframe` and `popup` mode.
**Use an existing checkout URL**
* The `mode` used when configuring the SDK checkout must match the `checkout_mode` when [creating a session](/docs/api/core/sessions/postv2session).
* The parent window `origin` must be provided in the cancel and complete urls when the `checkout_mode` is `iframe` or `popup`.
**Customer Tokenization** This is not supported in the `onComplete` event. To receive a customer UUID, subscribe to the [customer.tokenized](/docs/api/core/webhooks/postv2webhooks#valid-webhook-events) event.
### Checkout completed by Payload
```javascript
function onCompleteHandler(event) {
var data = event.data || Object.create(null);
console.log("session data:", data.session_uuid, data.order_uuid);
}
checkout.init({
onComplete: onCompleteHandler,
});
```
### Checkout completed by URL
```javascript
function onCompleteHandler(event) {
var data = event.data || Object.create(null);
console.log("checkout data:", data.checkout_uuid);
}
checkout.init({
onComplete: onCompleteHandler,
});
```
### Capture Payment
Capturing an order is not required if the `CAPTURE` intent was used when creating the checkout.
```javascript
var payload = {
capture_amount: {
amount_in_cents: integer,
currency: string,
},
};
checkout.capturePayment(data.order_uuid, payload);
```
```javascript
var payload = {
capture_amount: {
amount_in_cents: 5000,
currency: "USD",
},
};
checkout.capturePayment(data.order_uuid, payload);
```
The capture payment method requires two parameters, the `order_uuid` and the payload as detailed in the [Capture Amount By Order Object](/docs/api/core/orders/postv2capturebyorder).
The amount to capture on this order
The amount in cents
The 3 character currency code as defined by ISO 4217
## Installment Plan
```javascript
const checkout = new Checkout({});
checkout.getInstallmentPlan(1000);
```
```json
{
"schedule": string,
"totalInCents": integer,
"installments": [
{
"installment": integer,
"amountInCents": integer,
"dueDate": string
}
]
}
```
```json
{
"schedule": "bi-weekly",
"totalInCents": 1000,
"installments": [
{
"installment": 1,
"amountInCents": 250,
"dueDate": "2020-10-14"
},
{
"installment": 2,
"amountInCents": 250,
"dueDate": "2020-10-28"
},
{
"installment": 3,
"amountInCents": 250,
"dueDate": "2020-11-11"
},
{
"installment": 4,
"amountInCents": 250,
"dueDate": "2020-11-25"
}
]
}
```
Payment cadence for installment plan
Total order amount in cents
Breakdown of each payment due
Number of installment in series
Installment amount in cents
Due date of the installment
This function will provide the installment details based on an amount in cents. An existing [checkout](#checkout-initialization) can be used, or a `checkout` without any configuration can also be used to quickly get installment details.
# Introduction
Source: https://docs.sezzle.com/docs/guides/direct/introduction
## Direct Integration Order Flow

1. Request Payment Session Creation
* The Merchant Server sends a request to the Sezzle API to create a payment session for the customer’s order, including details like the order amount, items, and customer information.
2. Generate Session and Redirect URL
* The Sezzle API processes the request, creates a session linked to the order, and generates a redirect URL for the customer to access the Sezzle UI for payment processing.
3. Receive Redirect URL from Sezzle API
* The Sezzle API sends the generated redirect URL to the Merchant Server, allowing the merchant to proceed with customer redirection.
4. Redirect Customer to Sezzle UI
* Using the redirect URL, the Merchant Server directs the customer to the Sezzle UI to complete the payment process.
5. Process Customer Checkout in Sezzle UI
* The customer reviews the order in the Sezzle UI and completes the checkout.
* Sezzle assesses the customer’s financing eligibility (e.g., via a credit check), approving or denying the transaction.
* If denied, the customer must use an alternative payment method.
6. Redirect Customer Back to Merchant Site (Optional)
* After checkout (approved or denied), Sezzle redirects the customer to the Merchant Site.
* The merchant may display a confirmation page showing the order status (e.g., “Order Confirmed” or “Payment Failed”).
* This step is optional based on the merchant’s preference.
7. Request Fund Capture
* Upon payment approval, the Merchant Server sends a request to the Sezzle API to capture the order funds, either in full or partially (e.g., for partial shipments).
8. Receive Transaction Status from Sezzle API
* The Sezzle API processes the capture request and returns the transaction status to the Merchant Server.
* The status indicates whether the funds were captured successfully or if issues occurred (e.g., insufficient funds).
* The merchant updates their system and notifies the customer accordingly.
# Manual Integration
Source: https://docs.sezzle.com/docs/guides/direct/manual
The [Javascript SDK](./integration) is a great way to get started but if not available for your implementation you can perform all necessary actions on your own.
## Quick Start Guide
1. Use API keys to obtain an [authentication](/docs/api/core/authentication/postauthentication) token
2. Create a [session](/docs/api/core/sessions/postv2session) with an order object
3. Redirect user to Sezzle checkout URL
4. User completes Sezzle checkout
5. Sezzle redirects user back to merchant complete URL
6. Manage the order with the [Orders API](/docs/api/core/orders/getv2order)
7. Subscribe to all necessary [Webhook Events](/docs/api/core/webhooks/postv2webhooks)
# Configuration
Source: https://docs.sezzle.com/docs/guides/express/express-checkout
The Sezzle Express checkout button is a powerful tool for custom platform merchants. Integrated directly into the cart page, the button allows shoppers to select Sezzle as their payment method with a single click, leveraging their Sezzle account for a seamless payment experience. This feature is designed to reduce cart abandonment, increase conversion rate, and enhance customer satisfaction.
## Installation
### Include SDK code
Include the following script in the `` section of the page.
```html
```
### Checkout Configuration
#### Configuration Options
```javascript
const checkoutSdk = new ExpressCheckout({
mode: string,
publicKey: string,
apiMode: string,
apiVersion: string,
});
```
```javascript
const checkoutSdk = new ExpressCheckout({
mode: "popup",
publicKey: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
apiMode: "live",
apiVersion: "v2",
});
```
Available options: `popup`, `iframe`, `redirect`
**popup** mode will work out-of-the-box. No additional configuration is required to use **popup**. Sezzle currently recommends **popup** mode.
**iframe** mode will not work properly without first contacting Sezzle. For security reasons, Sezzle must enable **iframe** for your domain(s). To have it enabled, please submit a request with your Sezzle Merchant UUID and a list of domains to be allowed per environment (production and sandbox). For example, [*please enable uat1.mysite.com, uat2.mysite.com in sandbox and www.mysite.com, mysite.com in production*](http://www.mysite.com).
The integration for **popup** and **iframe** are identical, aside from the mode. Using **popup** mode will expedite your development. Upon completing the integration, if **iframe** is a requirement, then contact Sezzle to enable your domain(s) and switch the mode to **iframe**.
Used when creating a checkout or capturing payment. Find your API keys at [https://dashboard.sezzle.com/merchant/settings/apikeys](https://dashboard.sezzle.com/merchant/settings/apikeys)
Environment in which the checkout is to be completed
Available options: `live`, `sandbox`
Sezzle Checkout SDK Version
Available options: `v2`
### Sezzle Button
#### Sezzle Button Configuration
Create a placeholder element for the Sezzle Button to be rendered on the page(s).
```html
```
```html
```
Text to appear inside the button. Use `%%logo%%` inside the text to
display the Sezzle image
Available options: `square`, `semi-rounded`
Custom classes to be applied
Negative space between top of content and edge of button
Negative space between bottom of content and edge of button
Negative space between left side of content and edge of button
Negative space between right side of content and edge of button
Width of the Sezzle logo within the button
Position of the Sezzle logo from top.
Position of the Sezzle logo from bottom.
Position of the Sezzle logo from left.
Position of the Sezzle logo from right.
Spacing between the templateText letter.
Width of the button
Height of the button.
#### Render the Sezzle Button
Requires having the checkout object created from above to render the button. Call renderSezzleButton passing the id of the placeholder element defined in Button Configuration, above.
```javascript
await checkoutSdk.renderSezzleButton("sezzle-smart-button-container");
```
### Initialize the Checkout
#### Event Handlers
The SDK requires the following event handlers that can be used to extend features in your application.
```javascript [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({...});
},
onComplete: function (response) {
checkoutSdk
.capturePayment(response.data.order_uuid, {...})
.then((r) => {
console.log(r);
});
},
onCancel: function () {
alert("Transaction cancelled.");
},
onFailure: function () {
alert("Transaction failed.");
},
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
"https://gateway.sezzle.com/v2/authentication",
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
public_key: string,
private_key: string,
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
`https://gateway.sezzle.com/v2/order/${order_uuid}/checkout`,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
amount_in_cents: integer,
currency_code: string,
shipping_amount_in_cents: integer,
tax_amount_in_cents: integer,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
});
```
```javascript [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({
checkout_payload: {
// "cancel_url":{
// "href": "http://localhost:44300/demo/v2checkout.html"
// },
// "complete_url":{
// "href": "http://localhost:44300/demo/v2checkout.html"
// },
is_express_checkout: true,
order: {
intent: "AUTH",
reference_id: "543645yg5tg5675686",
description: "sezzle-store - #12749253509255",
requires_shipping_info: false,
items: [
{
name: "widget",
sku: "sku123456",
quantity: 1,
price: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
discounts: [
{
name: "20% off",
amount: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
metadata: {
location_id: "123",
store_name: "Downtown Minneapolis",
store_manager: "Jane Doe",
},
shipping_amount: {
amount_in_cents: 1000,
currency: "USD",
},
tax_amount: {
amount_in_cents: 1000,
currency: "USD",
},
order_amount: {
amount_in_cents: 10000,
currency: "USD",
},
},
},
});
},
onComplete: function (response) {
alert("Completed transaction. Capture started.");
checkoutSdk
.capturePayment(response.data.order_uuid, {
capture_amount: {
amount_in_cents: 10000,
currency: "USD",
},
partial_capture: false,
})
.then((r) => {
console.log(r);
});
},
onCancel: function () {
alert("Transaction cancelled.");
},
onFailure: function () {
alert("Transaction failed.");
},
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
"https://gateway.sezzle.com/v2/authentication",
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
public_key: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
private_key:
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaWQiOjEsInNjb3BlIjoibWVyY2hhbnRhcGkiLCJleHAiOjQ2MzM3MTg3MDYsImlzcyI6IlNlenpsZSJ9.Ez4-gbBpb5iTRJ9VCVD97IrjS98v1NalZlL2fHU2KSA",
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
`https://gateway.sezzle.com/v2/order/${order_uuid}/checkout`,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
amount_in_cents: 11500,
currency_code: "USD",
shipping_amount_in_cents: 500,
tax_amount_in_cents: 1000,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
});
```
Sezzle Button is clicked by the user.
See [Checkout Initialization](#checkout-initialization) section for payload options.
Sezzle payment is successfully completed. A successfully completed Sezzle checkout will trigger an event to the `onComplete` handler. The event should include a data object with data relevant to the start checkout input parameter.
See [capturePayment](#capture-payment) section for payload options.
Sezzle payment is cancelled. If the user exits the Sezzle checkout for any reason, the `onCancel` handler will be executed.
Sezzle payment has failed. If there is an error loading the Sezzle checkout page, the `onFailure` handler will be executed.
Required if `is_express_checkout` is `true`. Once shopper has provided shipping address via Sezzle express checkout, this function should return tax and shipping costs to Sezzle.
#### Checkout Initialization
```javascript [expandable]
checkoutSdk.startCheckout({
checkout_payload: {
// "cancel_url":{
// "href": string
// },
// "complete_url":{
// "href": string
// },
is_express_checkout: boolean,
order: {
intent: string,
reference_id: string,
description: string,
requires_shipping_info: boolean,
items: [
{
name: string,
sku: string,
quantity: integer,
price: {
amount_in_cents: integer,
currency: string,
},
},
],
discounts: [
{
name: string,
amount: {
amount_in_cents: integer,
currency: string,
},
},
],
metadata: {
some_property: string,
some_other_property: string
},
shipping_amount: {
amount_in_cents: integer,
currency: string,
},
tax_amount: {
amount_in_cents: integer,
currency: string,
},
order_amount: {
amount_in_cents: integer,
currency: string,
},
},
},
});
```
```javascript
checkoutSdk.startCheckout({
checkout_payload: {
// "cancel_url":{
// "href": "http://localhost:44300/demo/v2checkout.html"
// },
// "complete_url":{
// "href": "http://localhost:44300/demo/v2checkout.html"
// },
is_express_checkout: true,
order: {
intent: "AUTH",
reference_id: "543645yg5tg5675686",
description: "sezzle-store - #12749253509255",
requires_shipping_info: false,
items: [
{
name: "widget",
sku: "sku123456",
quantity: 1,
price: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
discounts: [
{
name: "20% off",
amount: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
metadata: {
location_id: "123",
store_name: "Downtown Minneapolis",
store_manager: "Jane Doe",
},
shipping_amount: {
amount_in_cents: 1000,
currency: "USD",
},
tax_amount: {
amount_in_cents: 1000,
currency: "USD",
},
order_amount: {
amount_in_cents: 10000,
currency: "USD",
},
},
},
});
```
The HTTP request information used to redirect the customer in the case of a cancellation
The URL used when redirecting a customer
The HTTP request information used to redirect the customer upon completion of the session
The URL used when redirecting a customer
Indicates whether checkout should follow the express checkout protocol . For this implementation, be sure to use `true`
The order for this session
If your checkout flow requires the user to confirm their checkout on your site after being approved by Sezzle, use “AUTH” as your intent. If you prefer the checkout be captured immediately, use “CAPTURE”.
Available options: `AUTH`, `CAPTURE`
Your reference ID for this order (must contain only alphanumeric characters, dashes (-), and underscores (\_))
Your description for this order
Flag to indicate if you would like us to collect shipping information for this checkout from the customer. If omitted, defaults to false.
If `is_express_checkout` is `true` and shipping method is not *In-Store pick-up*, `requires_shipping_info` must be `true`. For In-Store pick-up and standard checkout, use `false`
The items being purchased
The name of the item
The sku identifier
The quantity purchased
The price object
The amount of the item in cents
The 3 character currency code as defined by ISO 4217
The discounts applied to this order. Must be included in total
The description of the discount
A price object
The amount of the item in cents
The 3 character currency code as defined by ISO 4217
Object for any custom data you want to submit with the checkout. You are not limited to the key-value pairs shown in the example, and you may use any key-value pairs you like
Custom metadata field
Custom metadata field
The shipping fees applied to this order. Must be included in the total
The amount of the item in cents
The 3 character currency code as defined by ISO 4217
The taxes applied to this order. Must be included in the total
The amount of the item in cents
The 3 character currency code as defined by ISO 4217
The total amount of the order
The amount of the item in cents
The 3 character currency code as defined by ISO 4217
Start checkout should be implemented in the checkout `onClick` handler. There are two methods for hosting a checkout.
**Use a checkout payload as detailed in the Session Object**
* The cancel and complete URLs are not required for `iframe` and `popup` mode.
**Use an existing checkout URL**
* The `mode` used when configuring the SDK checkout must match the `checkout_mode` when [creating a session](/docs/api/core/sessions/postv2session).
* The parent window `origin` must be provided in the cancel and complete urls when the `checkout_mode` is `iframe` or `popup`.
**Customer Tokenization** This is not supported in the `onComplete` event.
To receive a customer UUID, subscribe to the
[customer.tokenized](/docs/api/core/webhooks/postv2webhooks#valid-webhook-events)
event.
#### Capture Payment
Capturing an order is not required if the `CAPTURE` intent was used when
creating the checkout.
```javascript
checkoutSdk
.capturePayment(response.data.order_uuid, {
capture_amount: {
amount_in_cents: integer,
currency: string,
},
partial_capture: boolean,
})
.then((r) => {
console.log(r);
});
```
```javascript
checkoutSdk
.capturePayment(response.data.order_uuid, {
capture_amount: {
amount_in_cents: 10000,
currency: "USD",
},
partial_capture: false,
})
.then((r) => {
console.log(r);
});
```
The amount to capture on this order
The amount in cents
The 3 character currency code as defined by ISO 4217
#### onCalculateAddressRelatedCosts
For security purposes, authentication and checkout update must originate
from merchant's back-end code.
1. Get authentication token
* Call the [authentication](/docs/api/core/authentication/postauthentication) endpoint to obtain a bearer token
* You should have already set this up in your back-end for the standard integration
* Instead of pointing directly to Sezzle as in the below example, you can re-use your existing function
2. Update the order
* Call the Update and Checkout endpoint to update shipping and tax amount
* See `Options` tab below for more details
```javascript [expandable]
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
yourBackendAuthenticationURL,
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
public_key: string,
private_key: string,
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
yourBackendUpdateOrderURL,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
amount_in_cents: integer,
currency_code: string,
shipping_amount_in_cents: integer,
tax_amount_in_cents: string,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
```
```javascript [expandable]
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
`http://your-backend-endpoint/authentication`,
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
public_key: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
private_key:
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaWQiOjEsInNjb3BlIjoibWVyY2hhbnRhcGkiLCJleHAiOjQ2MzM3MTg3MDYsImlzcyI6IlNlenpsZSJ9.Ez4-gbBpb5iTRJ9VCVD97IrjS98v1NalZlL2fHU2KSA",
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
`http://your-backend-endpoint/updateOrder`,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
amount_in_cents: 11500,
currency_code: "USD",
shipping_amount_in_cents: 500,
tax_amount_in_cents: 1000,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
```
The total amount in cents
The 3 character currency code as defined by ISO 4217
The shipping amount in cents for the order
The tax amount in cents for the order
The address UUID for the order
##### Response
```json
{
ok: boolean,
error: {
code: string
}
}
```
```json
{
ok: false,
error: {
code: "merchant_unsupported_shipping_address"
}
}
```
Available options: `merchant_unsupported_shipping_address`, `merchant_error`
`merchant_unsupported_shipping_address` indicates that the merchant does not support the shipping address provided.
`merchant_error` is generic error returned by the merchant when something goes wrong on their end.
# Introduction
Source: https://docs.sezzle.com/docs/guides/express/introduction
Install the Sezzle Express Checkout button to increase conversion rates and enhance customer satisfaction.
Sezzle Express Checkout is currently in Beta and only available to direct integration merchants. Contact your account manager to get early access.
## Shopper Experience
Sezzle shoppers can skip the manual entry on the merchant checkout by using the contact info and card details on their Sezzle account. Simply sign in and confirm shipping address, avoiding up to 20 fields.

Shoppers click the Sezzle Express button to visit Sezzle’s checkout page.
The shopper signs in to Sezzle and confirms their shipping address.
The shopper selects their preferred installment plan.
The shopper’s details are sent to the merchant, saving time.
The express checkout process minimizes friction by eliminating the need for shoppers to manually enter shipping and payment details, especially for returning Sezzle shoppers with saved information. The prefilled data, enabled by the merchant’s API integration, creates a seamless experience that reduces abandoned carts and boosts sales.
### Compare to Standard Checkout Flow
Without the Sezzle checkout button or prefilled information, the checkout process involves multiple steps, which can lead to cart abandonment due to complexity:
1. Add Items to Cart and Proceed to Checkout
* Shoppers select their desired products and initiate the checkout process on the merchant’s website
2. Enter Contact Information
* Shoppers manually input their name, email, and phone number
3. Enter Shipping Details
* Shoppers manually input their address
4. Select Shipping Method
* Shoppers manually select their shipping method
5. Select Sezzle as Payment Method
* Shoppers choose Sezzle from the available payment options and are redirected to Sezzle’s checkout page
6. Sign In and Complete Purchase
* On Sezzle’s site, shoppers sign in or create an account, confirm their payment plan (e.g., 25% upfront, three installments), and finalize the order
This multi-step process can deter shoppers, especially those who find entering information tedious or who abandon their carts due to lengthy forms.
## How It Works

## FAQs
Currently, you must be on a direct integration to use Sezzle Express Checkout. In the near future, we'll add integrations for popular ecommerce platforms.
Currently, you must provide a default shipping method. In the near future, we'll add functionality that allows your shoppers to select their preferred shipping method.
# Quick Guide
Source: https://docs.sezzle.com/docs/guides/express/quick-guide
Express Checkout option is only available for direct integration merchants.
## Installation
1. Import Library
* Copy this script to the `` of your site code
```html
```
2. Add Configuration
* Configure [Express Checkout](./express-checkout#configuration-options)
```diff
const checkoutSdk = new ExpressCheckout({
mode: "popup",
+ publicKey: `${yourSezzleAPIKey}`,
apiMode: "live",
apiVersion: "v2",
});
```
* Configure the [event listeners](./express-checkout#configuration-options)
```diff [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({
checkout_payload: {
is_express_checkout: true,
order: {
+ intent: "CAPTURE",
+ reference_id: yourReferenceID,
+ description: yourDescription,
requires_shipping_info: true,
items: [
{
+ name: yourProductName,
+ sku: yourProductSKU,
+ quantity: yourQuantity,
price: {
+ amount_in_cents: yourProductPrice,
+ currency: "USD",
},
},
],
discounts: [
{
+ name: yourDiscountName,
amount: {
+ amount_in_cents: yourDiscount,
+ currency: "USD",
},
},
],
shipping_amount: {
+ amount_in_cents: yourShippingAmount,
+ currency: "USD",
},
tax_amount: {
+ amount_in_cents: yourTaxAmount,
+ currency: "USD",
},
order_amount: {
+ amount_in_cents: yourOrderAmount,
+ currency: "USD",
},
},
},
});
},
onComplete: function (response) {
alert("Completed transaction. Capture started.");
checkoutSdk
.capturePayment(response.data.order_uuid, {
capture_amount: {
+ amount_in_cents: yourCaptureAmount,
+ currency: "USD",
},
partial_capture: false,
})
.then((r) => {
console.log(r);
});
},
onCancel: function () {
alert("Transaction cancelled.");
},
onFailure: function () {
alert("Transaction failed.");
},
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
+ `$(yourBackendAuthenticationURL)`,
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
+ public_key: yourSezzlePublicKey,
+ private_key: yourSezzlePrivateKey,
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
+ `$(yourBackendUpdateOrderURL)`,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
+ amount_in_cents: yourAmount,
+ currency_code: "USD",
+ shipping_amount_in_cents: yourShippingAmount,
+ tax_amount_in_cents: yourTaxAmount,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
});
```
3. Install Button
* Copy this placeholder element to where you wish the button to render on the page
* [See here for customization options](./express-checkout#sezzle-button-configuration)
```html
```
* Load the button using Javascript
```javascript
await checkoutSdk.renderSezzleButton("sezzle-smart-button-container");
```
# In-Store
Source: https://docs.sezzle.com/docs/guides/in-store
The Sezzle POS Checkout API allows merchants to send a Sezzle Checkout link to customers via text or email and receive real-time payment updates on their POS system upon checkout completion.
## Customer Experience
This is what the customer sees if they click the text message or email link.
The shopper enters their phone number and OTP.
The shopper adds a payment method.
The shopper selects their preferred installment plan.
The shopper completes their Sezzle order.
### Direct API Checkout
1. Merchant creates a [session](/docs/api/core/sessions/postv2session)
* Set order `intent` to `AUTH`
* The customer checkout is texted or emailed as set in `send_checkout_url`
2. Sezzle returns order uuid and checkout URL
3. Customer receives Sezzle URL via text or email to check out
4. Customer completes the Sezzle checkout
5. Merchant receives order-complete notification
* You can either [get order details](/docs/api/core/orders/getv2order) or subscribe to [webhooks](/docs/api/core/webhooks/postv2webhooks)
6. (optional) Update the [order reference](https://docs.sezzle.com/docs/guides/virtual/automated#set-order-reference-id)
7. [Capture](/docs/api/core/orders/postv2capturebyorder) the payment
8. (optional) Expire the checkout manually
* [Delete the checkout](/docs/api/core/orders/deletev2deletecheckoutbyorder) if the customer has not completed the checkout and the merchant has canceled the order
9. (optional) [Refund](/docs/api/core/orders/postv2refundbyorder) the order
# Introduction
Source: https://docs.sezzle.com/docs/guides/sezzle/introduction
Sezzle provides an effortless way to integrate flexible payment options into your checkout process. With a design focused on quick and efficient setup, our solution allows you to get started faster than you might anticipate.
## Get Started with Sezzle
Select the integration option that works best for your store.
Utilize our APIs to integrate Sezzle into your custom online store.
Integrations for Shopify, Magento 2, Wix, WooCommerce, and more.
* Accept Sezzle payments as credit card transactions.
Empower your customers to pay with Sezzle at your physical store location.
## Conversion Boosters
Increase sales with these additional Sezzle products.
Showcase Sezzle as a payment method on product pages.
Increase conversion rates and enhance customer satisfaction.
## Additional Resources
These will speed up your Sezzle integration.
Accept web and in-app payments through our expansive API integration.
Contact our Merchant Support team to get help with integrating Sezzle.
## How Sezzle Works
The shopper adds your product to their cart.
The shopper selects "Buy Now, Pay Later with Sezzle" at checkout.
The shopper selects their preferred installment plan.
The shopper completes their Sezzle order.
## Popular Integrations






# Using Virtual Card SDK
Source: https://docs.sezzle.com/docs/guides/virtual/automated
This is the fastest way to get started using the virtual card offering from Sezzle. A virtual card checkout implements the Card Session API to provide an easy to use, in-context solution for issuing and using a Sezzle virtual card as payment.
The Sezzle non-production environment does not provide a way to test the payment processing using your provider.
Virtual Card Checkout in an iframe or pop-up window.
Enable plain card details through message event or tokenization.
Handle payment success, failure, or cancel with your virtual card orders.
Render the Sezzle checkout button on your store.
## Include SDK code
Include the following script in the `` section of the page.
```html
```
## Checkout Configuration
The first requirement to get started with the Virtual Card SDK is to configure a new Checkout object.
### Configuration Options
```javascript
const checkoutSdk = new Checkout({
mode: string,
publicKey: string,
apiMode: string,
isVirtualCard: boolean,
});
```
```javascript
const checkoutSdk = new Checkout({
mode: "popup",
publicKey: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
apiMode: "sandbox",
isVirtualCard: true,
});
```
Available options: `popup`, `iframe`, `redirect`
**popup** mode will work out-of-the-box. No additional configuration is required to use **popup**. Sezzle currently recommends **popup** mode.
**iframe** mode will not work properly without first contacting Sezzle. For security reasons, Sezzle must enable **iframe** for your domain(s). To have it enabled, please submit a request with your Sezzle Merchant UUID and a list of domains to be allowed per environment (production and sandbox). For example, [*please enable uat1.mysite.com, uat2.mysite.com in sandbox and www.mysite.com, mysite.com in production*](http://www.mysite.com).
The integration for **popup** and **iframe** are identical, aside from the mode. Using **popup** mode will expedite your development. Upon completing the integration, if **iframe** is a requirement, then contact Sezzle to enable your domain(s) and switch the mode to **iframe**.
Used when creating a checkout or capturing payment. Find your API keys at [https://dashboard.sezzle.com/merchant/settings/apikeys](https://dashboard.sezzle.com/merchant/settings/apikeys)
Environment in which the checkout is to be completed
Available options: `live`, `sandbox`
Use `true` to enable this feature
## Sezzle Button
### Sezzle Button Configuration
Create a placeholder element for the Sezzle Button to be rendered on the page(s).
```html
```
```html
```
Text to appear inside the button. Use `%%logo%%` inside the text to
display the Sezzle image
Available options: `square`, `semi-rounded`
Custom classes to be applied
Negative space between top of content and edge of button
Negative space between bottom of content and edge of button
Negative space between left side of content and edge of button
Negative space between right side of content and edge of button
Width of the Sezzle logo within the button
Position of the Sezzle logo from top.
Position of the Sezzle logo from bottom.
Position of the Sezzle logo from left.
Position of the Sezzle logo from right.
Spacing between the templateText letter.
Width of the button
Height of the button.
### Render the Sezzle Button
Requires having the `checkout` object created from above to render the button. Call `renderSezzleButton` passing the `id` of the placeholder element defined in Button Configuration, above.
```javascript
checkoutSdk.renderSezzleButton("sezzle-smart-button-container");
```
## Initialize the Checkout
### Event Handlers
The SDK requires the following event handlers that can be used to extend features in your application.
```javascript
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({...});
},
onComplete: function (event) {
console.log(event.data);
},
onCancel: function () {
console.log("Checkout cancelled.");
},
onFailure: function () {
console.log("Checkout failed.");
},
});
```
```javascript [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({
checkout_payload: {
amount_in_cents: 1000,
currency: "USD",
merchant_reference_id: "merchant-checkout-id-max-255",
customer: {
email: "test@test.com",
first_name: "John",
last_name: "Doe",
phone: "0987654321",
billing_address_street1: "3432 Terry Lane",
billing_address_street2: "12",
billing_address_city: "Katy",
billing_address_state: "TX",
billing_address_postal_code: "77449",
billing_address_country_code: "US",
},
items: [
{
name: "Blue tee",
sku: "sku123456",
quantity: 1,
price: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
},
});
},
onComplete: function (event) {
console.log(event.data);
},
onCancel: function () {
console.log("Checkout cancelled.");
},
onFailure: function () {
console.log("Checkout failed.");
},
});
```
Sezzle Button is clicked by the user.
See [Checkout Initialization](#checkout-initialization) section for payload options.
Sezzle payment is successfully completed. A successfully completed Sezzle checkout will trigger an event to the `onComplete` handler. The event should include a data object with data relevant to the start checkout input parameter.
Sezzle payment is cancelled. If the user exits the Sezzle checkout for any reason, the `onCancel` handler will be executed.
Sezzle payment has failed. If there is an error loading the Sezzle checkout page, the `onFailure` handler will be executed.
### Checkout Initialization
```javascript [expandable]
checkoutSdk.startCheckout({
checkout_payload: {
amount_in_cents: integer,
currency: string,
merchant_reference_id: string,
customer: {
email: string,
first_name: string,
last_name: string,
phone: string,
billing_address_street1: string,
billing_address_street2: string,
billing_address_city: string,
billing_address_state: string,
billing_address_postal_code: string,
billing_address_country_code: string,
},
items: [
{
name: string,
sku: string,
quantity: integer,
price: {
amount_in_cents: integer,
currency: string,
},
},
],
},
});
```
```javascript [expandable]
checkoutSdk.startCheckout({
checkout_payload: {
amount_in_cents: 1000,
currency: "USD",
merchant_reference_id: "merchant-checkout-id-max-255",
customer: {
email: "test@test.com",
first_name: "John",
last_name: "Doe",
phone: "0987654321",
billing_address_street1: "3432 Terry Lane",
billing_address_street2: "12",
billing_address_city: "Katy",
billing_address_state: "TX",
billing_address_postal_code: "77449",
billing_address_country_code: "US",
},
items: [
{
name: "Blue tee",
sku: "sku123456",
quantity: 1,
price: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
},
});
```
`checkout_payload` is optional but providing as much information as possible will improve customer experience.
The amount of the item in cents
The 3 character currency code as defined by ISO 4217
Typically a checkout or cart id, currently used for tracking only (must contain only alphanumeric characters, dashes (-), and underscores (\_))
Used only for troubleshooting. The Reference ID that shows in the Merchant Dashboard can be set using [Set Order Reference ID](#set-order-reference-id)
The customer for the order
The customer's email address
The customer's first name
The customer's last name
The customer's phone number
The street and number of the address
The apt or unit
The city
The 2 character state code
The postal delivery code
The 2 character country code
The items being purchased
The name of the item
The sku identifier
The quantity purchased
The price object
The amount of the item in cents
The 3 character currency code as defined by ISO 4217
### `onComplete` with card data
The `event.data` will contain a fully formed payload containing the customers payment method. This information is not the payment method used to pay Sezzle but one that can be used through your payment gateway (Cybersource, Stripe, Braintree, etc).
#### `event.data` response
```json [expandable]
{
"session_id": string,
"card": {
"firstName": string,
"lastName": string,
"pan": string,
"cvv": string,
"expiryMonth": string,
"expiryYear": string
},
"holder": {
"email": string,
"phone": string,
"firstName": string,
"lastName": string,
"address1": string,
"address2": string,
"city": string,
"state": string,
"country": string,
"postalCode": string
}
}
```
```json [expandable]
{
"session_id": "123",
"card": {
"firstName": "John",
"lastName": "Doe",
"pan": "1234",
"cvv": "123",
"expiryMonth": "02",
"expiryYear": "28"
},
"holder": {
"email": "john.doe@example.com",
"phone": "6125551234",
"firstName": "John",
"lastName": "Doe",
"address1": "123 W Lake St",
"address2": "Unit 104",
"city": "Minneapolis",
"state": "MN",
"country": "US",
"postalCode": "55408"
}
}
```
The first name on the card
The last name on the card
The security code on back of the card
The expiration month on the card
The expiration year on the card
The customer's email address
The customer's phone number
The customer\`s first name
The customer\`s last name
The street and number of the address
The apt or unit
The city
The 2 character state code
The 2 character country code
The postal delivery code
### `onComplete` with tokenization
Tokenization is a feature developed for merchants who do not want the card information sent directly through the message event. Instead the payload to `onComplete` will contain a card token string.
#### Checkout initialization
```diff
checkout.init({
onClick: function () {
event.preventDefault();
checkout.startCheckout({
checkout_payload: {
...
+ "card_response_format":"token"
}
});
},
onComplete: function (event) {
console.log(event.data)
},
onCancel: function() {
console.log("checkout canceled");
},
onFailure: function() {
console.log("checkout failed");
}
})
```
#### `event.data` response
```json
{
"card": {
"token": string
}
}
```
```json
{
"card": {
"token": "abc12345"
}
}
```
#### Get card data
The virtual card data can be obtained using the token above using the [Virtual Card Data](/docs/api/core/sessions/virtual/carddatabytoken) method.
## Set Order Reference ID
In many cases, the merchant order ID will not be generated until after the checkout is completed and an order is created. Call `setOrderReferenceID` to set the Sezzle Order Reference ID with the merchant order ID after the virtual card transaction has been successfully completed.
### Using SDK
```javascript
checkoutSdk.setOrderReferenceID({
session_id: string,
order_id: string,
});
```
```javascript
checkout.setOrderReferenceID({
session_id: "example-session-id",
order_id: "merchant-order-id",
});
```
### Using API
The [Update Card Session](/docs/api/core/sessions/virtual/setorderid) API endpoint exists where you are able to update the Order ID based.
# Introduction
Source: https://docs.sezzle.com/docs/guides/virtual/introduction
* Sezzle Virtual Card allows merchants to:
* Accept Sezzle payments as credit card transactions.
* Seamlessly integrate with existing credit card forms at checkout.
* For API-related questions, contact the Sezzle team via the [Merchant Help Request](https://merchant-help.sezzle.com/hc/en-us/requests/new) form.
* An approved Sezzle account is required to begin integration; [sign up](https://dashboard.sezzle.com/merchant/signup) if you don’t have one.
* Endpoints in this guide require an [authentication](/docs/api/core/authentication/postauthentication) token.
You can test your integration with Sezzle using [Sezzle sandbox test environment](/docs/api/environments).
This product is currently only available in the United States. Support for Canada coming soon.
The shopper selects "Make a purchase request" on the Virtual Card tab.
The shopper enters the amount they plan to spend.
The shopper reads the loan terms and continues if they agree.
The shopper uses the Virtual card at your checkout or terminal.
# Manual Integration
Source: https://docs.sezzle.com/docs/guides/virtual/manual
If the [Virtual Card SDK](./automated) is not a viable option, the manual integration will guide you through the steps to complete a virtual card session in your checkout.
## Overview
1. Create a [virtual card session](/docs/api/core/sessions/virtual/postv2sessioncard)
2. Add a window event listener with type `message` to the checkout page
3. Open the card session `dashboard_url` using the mode provided in the create card session request
4. Sezzle will post a message to the listener when the user has completed the card session
5. Verify message `event.data` exists
6. Verify `event.data.szl_source` `=` `v_card`
7. Verify `event.data.card` and `event.data.holder` both exist
* If they exist
* Use card and holder data to submit the order by credit card
* If they don't exist
* The user did not provide virtual card data
## Example Javascript
```javascript [expandable]
window.addEventListener("message", function () {
var data = event.data || Object.create(null);
if (data.szl_source !== "v_card") {
console.log("invalid source");
return;
}
var card = data.card;
var holder = data.holder;
if (!card && !holder) {
console.log("failed virtual card session");
return;
}
console.log(
"card data:",
card.firstName,
card.lastName,
card.pan,
card.cvv,
card.expiryMonth,
card.expiryYear
);
console.log(
"holder data:",
holder.email,
holder.phone,
holder.firstName,
holder.lastName,
holder.address1,
holder.address2,
holder.city,
holder.state,
holder.country,
holder.postalCode
);
});
```
# Widget SDK
Source: https://docs.sezzle.com/docs/guides/widgets/sdk
## Purpose
Boost conversions and increase average order value by showcasing Sezzle’s financing options to shoppers as they browse your site.
## Overview
The Sezzle promotional messaging widget displays available financing options on product and cart pages, encouraging purchases. Follow the installation instructions below to add the widget to your website.
## Installation
* **One-Click Installation**: Many leading platforms offer one-click installation with Sezzle. [Check for compatibility with your platform](https://docs.sezzle.com/docs/plugins/).
* **Manual Installation**: If one-click installation is unavailable or incompatible with your theme, refer to the manual installation guide or contact [merchantsupport@sezzle.com](mailto:merchantsupport@sezzle.com) for assistance.
## Customization
Sezzle provides extensive configuration options to tailor the widget to your site’s needs. Our engineering team is available to ensure seamless integration with your website’s design and functionality.
### HTML required
```html
```
Replace `{merchant_id}` with your 36-character value from your [Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business).
## Merchant Configured
Configuration is required prior to invoking the price widget script.
## `document.sezzleConfig` Options
```html [expandable]
```
```html [expandable]
```
Allows multiple configurations for one store to suit different page types, layouts, or applications. View all available options for customization.
ID, class, or path to the element in the webpage where the product price text value will be detected.\
To indicate a path, subpaths are separated by '/', IDs are preceded by '#', classes by '.', and tag names are suffixed with index (`tagName-Index`). Indexes are zero-based.
e.g. '#ProductSection/.product-price/SPAN-1' would target the 2nd 'SPAN' element contained within elements that contain the 'product-price' class which are contained within the element with an ID of 'ProductSection'.
Path from `targetXPath` to the element after which the Sezzle widget should be rendered.\
Use '.' for sibling placement, '../' to move up to parents, and tag-index selectors to move down. Same syntax as `targetXPath`.
e.g. '../../BUTTON-0' would go to the grandparent element of the targetXPath and place the widget after the first button found within that container.
Specific word appearing in the URL of pages where the widget config should
apply. Typical values are 'product' or 'cart'.
Updates the logo color to coordinate with different background colors. If not specified, the widget will attempt to detect the background color and apply a contrasting logo.
Available options: `dark`, `light`, `black-flat`, `white-flat`.
Custom styling to apply to the Sezzle widget container. Accepts CSS in JSON
format. Keys must use camelCase, be wrapped in quotes, and separated by
commas.
Key should be the CSS property you wish to set, in camelCase, value should be type string
Custom styling to apply to the Sezzle text within the widget. Accepts CSS in
JSON format. Keys must use camelCase, be wrapped in quotes, and separated by
commas.
Key should be the CSS property you wish to set, in camelCase, value should be type string
Custom styling to apply to the Sezzle logo within the widget. Accepts CSS in
JSON format. Keys must use camelCase, be wrapped in quotes, and separated by
commas.
Key should be the CSS property you wish to set, in camelCase, value should be type string
The path from the targetXPath to the observable element
Function receives two parameters. The first is the related element per `relatedPath`, the second is the widget that corresponds to this `targetXPath` element. Write a custom function to check condition on relatedPath, then perform an action on widget.
Direct child elements of `targetXPath` to be disregarded when detecting the
price. Useful for handling variations between sale and regular-priced items.
Text strings within `targetXPath` to be disregarded when detecting the price
and rendering the widget.
XPath of elements that should be hidden when Sezzle's widget is showing.\
Despite the name, this config accepts an array of XPaths.
e.g. \["#viabill-pricetag",".afterpay-paragraph","QUADPAYWIDGET-0"]
Alignment of the widget relative to the parent element.
Available options: `left`, `center`, `right`, `auto`
Screen width in pixels below which the alignment switches to
`alignmentSwitchType`. Common breakpoint: 768px (for handheld vs desktop).
Alignment of the widget to apply when viewport width is narrower than
`alignmentSwitchMinWidth`.
Available options: `left`, `center`, `right`, `auto`
Afterpay's logo is appended to widget content. When clicked, the competitor's modal will display.
Klarna's logo is appended to widget content. When clicked, the competitor's modal will display.
Minimum price in cents for which Sezzle can be selected at checkout. If the
price at `targetXPath` is lower than this number, the widget will render
with a note stating the minimum eligible price required. This configuration
does not prevent a customer from checking out with Sezzle below this price.
For more information on setting a gateway minimum, contact your Merchant
Success representative or use the Contact Us section of the Sezzle Merchant
Dashboard.
Maximum price in cents for which the widget should be rendered. If the price
at `targetXPath` is higher than this number, the widget will not render on
the page.
Language in which the widget text should be rendered. If the specified language is not supported, the translation will default to English.
Available options: `left`, `center`, `right`, `auto`
Can attach event listeners to DOM elements and re-initialize the widget.
The id or class of the element to observe
The event type for which to observe, upon which to re-render the widget
#### Simple Example
```html
```
```html
```
## Rendering the Widgets
After building the config, it is time to upload the widgets to your webpages! The SDK needs to be called in the HTML of the webpage for the widgets to be rendered. Place the config and the widget script at the bottom of the code file for the HTML page, and you should be all set!
A pre-populated snippet should be provided in your Sezzle Merchant Dashboard Setup Checklist.
When using this snippet to add the widget script to your site, you must replace `{merchant_id}` with the 36-character Sezzle Merchant ID found in the [Business Settings of your Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business) for the applicable store. Please do not re-use IDs across multiple URLs.
The script with the applicable merchant ID **must** be included *after* `document.sezzleConfig` is defined.
### HTML Needed
```html
```
Replace `{merchant_id}` with your 36-character value from your Merchant Dashboard.
# Static Widget
Source: https://docs.sezzle.com/docs/guides/widgets/static
The Static Widget enables merchants to integrate the Sezzle widget into their website without direct communication with Sezzle’s servers. All widget code, custom configurations, images, and stylesheets are hosted locally within the merchant’s store theme. This approach offers:
* Faster Load Times
* Local hosting reduces dependency on external servers.
* Greater Control
* Merchants have full authority over the widget’s appearance and behavior, as the Sezzle team cannot modify it.
This local control means merchants are responsible for any updates or changes to the widget.
## NPM Implementation
Using npm:
`npm install @sezzle/sezzle-static-widget@latest`
Within your product page, add the following code snippet where you want the widget to render, updating the path to node\_modules for your file structure:
```html
```
Use the Configuration options below to customize the widget appearance as desired.
## HTML Implementation
Implementation varies greatly by platform, theme, etc. Below is a general overview of the process. The code snippets below are samples and may need to be modified to fit your site. For Shopify merchants, please proceed to the next section.
1. Create a new Javascript file within your site's code where appropriate
2. Copy and paste [this minified code](https://github.com/sezzle/static-widgets/blob/production/dist/bundle.js) into the newly created file
3. Import the new file into the page(s) where the Sezzle widget will be added
```html
```
4. Create a placeholder element where the Sezzle widget should be rendered on the page(s), usually below the price container element
```html
```
5. Add the following script below the placeholder element, updating the amount value to reflect your price variable which renders the current product price or cart total as applicable
```html
```
6. Preview your changes to confirm the widget is displaying correctly in each of the following scenarios
* Use the Configuration options below to customize the widget appearance as desired:
* Regular Price
* Sale Price
* Variant Selection
* Desktop
* Mobile
## Shopify Implementation
1. Log into your Shopify store admin
2. Click `Online Store` > `Themes`
3. Next to the theme you wish to edit, click `Actions`, then select `Edit Code`
4. Under the `Assets` folder, click `Add a new asset`
5. On the `Create a Blank File` tab, name the file `sezzle-static-widget` and select `.js` as the file type, then click `Add Asset`
6. Copy the code from the [repository file](https://github.com/sezzle/static-widgets/blob/production/dist/bundle.js) and paste it into this new file, then click `Save`
7. Add the following lines of code wherever the widget should render on the product page within `templates/product.liquid` or `sections/product-template.liquid` as applicable
```html
{{ 'sezzle-static-widget.js' | asset_url | script_tag }}
```
8. Add the following lines of code wherever the widget should render on the cart page within `templates/cart.liquid` or `sections/cart-template.liquid` as applicable
```html
{{ 'sezzle-static-widget.js' | asset_url | script_tag }}
```
# Customizing the Configuration
Once the widget is rendering, additional configurations can be added to the AwesomeSezzle to change the appearance. Below is an example featuring all the options. However, amount is the only required value.
```html [expandable]
```
```html
```
The target price amount, in dollar format.\
Provide the product price variable as a template-literal.\
Shopify Liquid Example: `'{{ product.selected_or_first_available_variant.price | money }}'`
Provide the ID name or array of ID names that correspond to the widget placeholder elements where the widget should be rendered.
Updates the logo color to coordinate and contrast with different background
colors of websites. If `theme` is not specified, the widget will attempt to
detect the background color and apply the appropriate contrasting logo. Use
"light" or "black-flat" for light backgrounds, and "dark" or "white-flat"
for dark backgrounds.
Available options: `dark`, `light`, `black-flat`, `white-flat`
Maximum width of the widget element in pixels. Set to 200 to render the
widget nicely on 2 lines, or 120 for 3 lines.
Amount of space above the widget in pixels.
Amount of space below the widget in pixels.
Amount of space left of the widget in pixels.
Amount of space right of the widget in pixels.
Alignment of the widget relative to the parent element.
Available options: `left`,`center`, `right`, `auto`.
Screen width in pixels below which the alignment switches to
`alignmentSwitchType` instead of `alignment`. The most common breakpoint is
*768* (handheld vs desktop). `alignmentSwitchMinWidth` is typically only
necessary when alignment is not set to `auto`.
Alignment of the widget relative to the parent element to be applied when
the viewport width is narrower than `alignmentSwitchMinWidth`.
Available options: `left`,`center`, `right`, `auto`.
Color of the widget text. Accepts all CSS color formats: hex, rgb(), hsl(),
etc.
Font family of the widget text.
Font size of the widget text in pixels. Enter numbers only — do not include
units like `px`!
Boldness of the widget text. 100 is the lightest, 900 is the boldest.
Specifies the page category on which the widget is being rendered.
Avaialble options: `product-page`, `product-preview`, `cart`.
Sets the CSS value of fixed-height.
Ratio at which to scale the Sezzle logo. The space the logo occupies between
the widget text and the More Info link/icon is determined by the font size.
Custom styling to apply to the Sezzle logo within the widget. The object
accepts any CSS styling in JSON format. Keys must be camelCase.
Language in which the widget text should be rendered. If the specified language is not supported, the translation will
default to English.
Available options: `en`, `fr`, `es`, `de`.
Allows widget installment price to calculate and format correctly for
foreign currencies.
Available options: `default`, `comma`.
Allows widget to render the correct program details, depending on if the
merchant is enrolled through Sezzle North America or Sezzle Europe.
Available options: `North America`, `Europe`.
## Methods
The following functions are built into the static widget and are ready for use for your widget installation. Simply add the applicable snippet to your webpage code, updating the event listener and variables as necessary.
### `alterPrice(newPrice)`
Alters price on widget. Create an event listener after `renderSezzle.init()` that invokes this function where `newPrice` is the new price value of the selected variant. Example:
```javascript
document.onchange = function () {
var newPrice = "${yourPriceVariableHere}";
renderSezzle.alterPrice(newPrice);
};
```
### `renderModalByfunction()`
Opens the Sezzle modal by a function. Create an event listener that invokes this function if the event location is other than the info icon.
```javascript
var clickElement = document.querySelector("#yourClickableElementIdHere");
clickElement.addEventListener("click", function () {
renderSezzle.renderModalByfunction();
});
```
### `isMobileBrowser()`
Returns true on mobile browser. Use this event to show or hide the widget in different page locations based on device type.
```javascript
document.onreadystatechange = function () {
if (renderSezzle.isMobileBrowser()) {
document.getElementById("sezzle-widget-mobile").style.display = "block";
document.getElementById("sezzle-widget").style.display = "none";
} else {
document.getElementById("sezzle-widget").style.display = "block";
document.getElementById("sezzle-widget-mobile").style.display = "none";
}
};
```
### `getElementToRender()`
Returns Element where the widget will be rendered. Create an event listener that invokes this function if the widget should appear when the event occurs.
```javascript
document.body.insertBefore(
renderSezzle.getElementToRender(),
document.getElementById("price").nextElementSibling
);
```
# Before You Begin
Source: https://docs.sezzle.com/docs/plugins/before-you-begin
1. You should have a Sezzle merchant account
* Please visit our [signup page](https://dashboard.sezzle.com/merchant/signup) if you don't have an account
2. Make sure you know the following Sezzle details for your account
* [Merchant ID](https://dashboard.sezzle.com/merchant/settings/business)
* [Public API Key](https://dashboard.sezzle.com/merchant/settings/apikeys)
* [Private API Key](https://dashboard.sezzle.com/merchant/settings/apikeys)
3. Familiarize yourself with the [transaction flow](https://docs.sezzle.com/docs/guides/direct/introduction) when buying with Sezzle
# BigCommerce
Source: https://docs.sezzle.com/docs/plugins/big-commerce
This guide explains how to add Sezzle as a payment option on your BigCommerce website, enabling customers to use Sezzle at checkout.
This integration is only available with [BigCommerce's Optimized One Page
Checkout](https://support.bigcommerce.com/s/article/Optimized-Single-Page-Checkout?language=en_US).
### Enable Sezzle as an online payment method
[Get the app](https://www.bigcommerce.com/apps/sezzle/)
1. Go to `Store Setup` > `Payments`

2. Go to `Online Payment Methods`, find `Sezzle` and click `Set up`

3. Copy your Public Key and Private Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/)
* Paste them into the corresponding fields
4. Select the `Transaction Type`
If you select `Authorize only`, payment will only be authorized and
will have to be captured later in BigCommerce.
5. Select the `Test Mode` (`No` (Recommended) or `Yes` for testing)
6. Click `Save`
### Install the Sezzle BigCommerce App
1. Log in to your website's BigCommerce store admin page
2. In the left sidebar, click `Apps > Marketplace`
3. Click `BigCommerce.com/Apps`

4. Search for `Sezzle`

5. Click `Sezzle`, then click `Get This App`

6. Click `Install`

7. Check the PCI Compliance box, then click `Confirm` to start the installation

### Widget Pre-Configuration
1. Make sure you have the Sezzle App installed in your store
2. Go to `Apps` > `Sezzle`
3. Copy your Merchant ID from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/)
* Paste them into the corresponding fields in the Sezzle App of your BigCommerce admin
4. Check the Add Sezzle Widget Script box
* This will inject the widget script into the product and cart pages of your store
5. Save the configuration
### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
### Troubleshooting
If testing was unsuccessful, review the following:
1. Site has Optimized One-Page Checkout enabled
* Go to `Advanced Settings` > `Checkout`
2. API Keys were entered correctly
* To avoid typos or extra spaces, use the Copy icon in the [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
3. If you have multiple accounts with Sezzle, each store has its own merchant ID and API Keys that are tied to the store's URL
4. Add Sezzle Widget Script box is checked
5. Widget script is present on your website and reflects the Merchant ID from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
* Go to a product page on your website
* Right-click then select `Inspect`
* In the `Elements` tab, search for `widget.sezzle`
### Manual Theme Integration
If the Sezzle App fails to maintain the widget script on the product pages, or to add the script manually for additional pages, complete the following steps:
1. Go to `Storefront` > `Script Manager`
2. Click the `Create a Script` button
3. Set `Name of script` to `Sezzle Widget`
4. Set `Location on page` to `Footer`
5. Set `Select pages` where script will be added to `All pages`
6. Set `Script category` to `Essential`
7. Set `Script type` to `Script`
8. In the Script content area, copy and paste the script, then click `Save`
The script to be inserted into your webpage is as follows:
#### Template
```javascript
```
Update `{sezzle_merchant_uuid}` in the above script template with your
site’s Merchant ID (removing the curly brackets), which can be found in the
[Sezzle Merchant
Dashboard](https://dashboard.sezzle.com/merchant/settings/business).
#### Example
```javascript
```
Instructions may vary slightly depending on your active plug-ins. If the issue persists after completing the above steps, look for other available features that allow the addition of a custom HTML code snippet to the site footer. If no such feature is found, the below steps may be followed as a last resort:
1. Go to `Storefront` > `My Themes`
2. In your Current Theme, click `Advanced` then select `Edit Theme Files`
3. In the confirmation window, click `Edit Theme Files`
4. In the file list, go to `templates` > `pages`, then select `product.html`
5. Copy and paste the script into the very bottom of the file, then click `Save` and `Apply Files`
6. Repeat the previous step for the `cart.html` file
For any kind of assistance, reach out to
[**merchantsupport@sezzle.com**](mailto:merchantsupport@sezzle.com).
### Uninstall Steps
1. Go to `Apps` > `My Apps`
2. Under the Sezzle App, click `Uninstall`

3. Toggle the button against Sezzle under `Store Setup` > `Payments` > `Online Payment Methods` to disable Sezzle as a payment option
# BuyItLive
Source: https://docs.sezzle.com/docs/plugins/buy-it-live
This guide explains how to add Sezzle as a payment option on your BuyItLive website, enabling customers to use Sezzle at checkout.
### BuyItLive Admin Configuration
1. Log in to your website's BuyItLive admin
2. Click `Add Payment Provider`
3. Select `Connect with Sezzle`
4. Go to `Sezzle Payments` > `Tools`
5. Copy your Private Key and Public Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Paste them into the corresponding fields in the Sezzle configuration page of your BuyItLive admin
6. Click `Save Settings`
7. Go to `Cart Settings` and ensure the `Sezzle` switch is in the `On` position
Installation is complete!
### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
# CommentSold
Source: https://docs.sezzle.com/docs/plugins/comment-sold
This guide explains how to add Sezzle as a payment option on your CommentSold website, enabling customers to use Sezzle at checkout.
### CommentSold Admin Configuration
[Get the app](https://commentsold.com/admin/setup/billing)
1. In your CommentSold admin, go to Setup
2. Click Payment Gateways
3. Copy your Private Key and Public Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Paste them into the corresponding fields in the Sezzle configuration page of your CommentSold admin
4. Click Update Keys

Installation is complete!
### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
# Lightspeed
Source: https://docs.sezzle.com/docs/plugins/lightspeed
This guide explains how to add Sezzle as a payment option on your Lightspeed website, enabling customers to use Sezzle at checkout.
Sezzle's Lightspeed App is certified and available [here](https://www.lightspeedhq.com/ecommerce/store/apps/sezzle/) in the App Store.
### Install the Sezzle Lightspeed App
1. Log in to your Lightspeed back office
2. Navigate to `Apps` > `App Store`
3. Search for `Sezzle` in the search bar and click on the Sezzle app

4. Click `Install App` in the top right corner

5. On successful install, you will be redirected to Sezzle App

### Configure Sezzle
1. Navigate to the Sezzle App by clicking on `Go to App` located at `Apps` > `Purchased Apps` > `Sezzle`
2. Copy your Public Key and Private Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Paste them into the corresponding fields
3. Click on `link sezzle account` to link your Sezzle account with your Lightspeed store
The message `Account successfully linked` is displayed when the account is verified
### Settings
Toggle the `Sezzle at Checkout` checkbox to enable (`On`) or disable (`Off`) Sezzle as a payment option in the checkout page.

Toggle the `Sezzle Widgets` checkbox to enable (`On`) or disable (`Off`) Sezzle widget in the PDP and Cart pages.

### Payment Refund
1. In your Lightspeed back office, go to `Orders` > `Orders`
2. Select the order to be refunded
3. Click `Add Credit Invoice`
4. Select the item and enter the quantity
5. Ensure that `Status` `=` `Not Paid`
6. Click `Add`
7. Cancelling a Paid order will also refund the payments for the Paid Invoices
**On Successful Refund**
* An invoice with the status of `Not Paid` will be created in the `Orders > Invoices` section.
* The Order Status will be displayed as `Refunded` in your Sezzle Merchant Dashboard.
### Validate
A Lightspeed test store must be used for Sandbox testing.
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
# Magento 2
Source: https://docs.sezzle.com/docs/plugins/magento-2
This guide explains how to add Sezzle as a payment option on your Magento 2 website, enabling customers to use Sezzle at checkout.
Sezzle's Magento 2 extension is certified in the [marketplace](https://commercemarketplace.adobe.com/sezzle-sezzlepay.html) and can be downloaded from GitHub.
All tokenized orders will be processed as Pay in Full.
## Install the Sezzle Magento 2 Extension
Follow the instructions [here](https://github.com/sezzle/sezzle-magento2/tree/production) to install the Sezzle extension to your Magento setup
## Configure Sezzle
1. Log in to your Magento admin site
2. Go to `Stores` > `Configuration` > `Sales` > `Payment Methods` > `Additional Payment Solutions`
3. Next to `Sezzle`, click `Configure`
4. Click `I've already setup Sezzle, I want to edit my settings`
If you have not already signed up for Sezzle, you must [do so now](https://dashboard.sezzle.com/merchant/signup) before proceeding
### General
1. Set `Enabled` to `Yes`
2. Enter Public Key and Private Key, as found in your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
3. Select the `Payment Mode: Live`
* See [Sandbox Testing](#sandbox-testing) for more information
4. Set `Min Checkout Amount` to restrict Sezzle payment method below the given amount
5. Select the `Payment Action`
* `Authorize Only` will only authorize payment and requires that the payment be captured later
* See [Capture Payment](#capture-payment) for manual capture instructions
* `Authorize and Capture` will perform both in a single step
* See [Authorize Only vs Authorize and Capture](/docs/guides/auth-and-capture) for details
6. Select `Enable Customer Tokenization`
* `Yes` prompts the customer to allow their account to be tokenized
* See [Customer tokenization](#customer-tokenization-details) for details
7. Set `Sort Order` to manage the position of Sezzle in the checkout payment options list

### In-Context Settings
In-Context Solution opens Sezzle payment processing in an iframe or pop-up. When disabled, shoppers will be redirected to Sezzle for payment processing, then returned to the merchant site upon completion.
* Set `Enable In-Context Solution` to `Yes` to enable In-Context Checkout.
* Set `In-Context Checkout Mode`
* `IFrame` will open Sezzle in a modal over the merchant site
* `Pop Up` will open Sezzle in a new window

### Settlement Report Settings
1. Set `Enable Settlement Reports` to `Yes` to enable the Settlement Reports Dashboard
2. Set `Range` to a value based on which you want to fetch the Settlement Reports
3. Set `Enable Automatic Syncing` to fetch the Settlement Reports asynchronously
This requires `cron` to be enabled
4. Set `Schedule` and `Time of Day` for the automatic sync to run

### Widget Settings
1. Set `Enable Widget in PDP` to `Yes` to display Sezzle on-site messaging after the product price on the Product Detail Page
2. Set `Enable Widget in Cart Page` to `Yes` to display Sezzle on-site messaging after the cart total on the Cart Page
3. Set `Enable Installment Widget in Checkout Page` to `Yes` to show the Sezzle installment plan widget under the Sezzle payment option on the Checkout Page
4. Set `Path to Price Element` to define where in the Checkout Page the order total text value will be detected for the installment widget
5. Save the configuration and clear the cache



### Widget Support
If widgets do not appear on the PDP and/or cart page after enabling the `Widget Settings`, click the `Request` button in this section to contact the Sezzle Widget team for assistance.

### Developer Settings
1. Set Enable Log Tracker to Yes to trace the Sezzle checkout process
2. Set Send Logs to Sezzle to Yes to send the logs to Sezzle automatically
This requires `cron` to be enabled
3. You may download the latest logs any time by clicking on Developer Logs: Sezzle Log
4. Save the configuration and clear the cache

### Clearing the Cache
1. Navigate to `System` > `Cache Management`
2. Click `Flush Cache Storage`
* Your store is now ready to accept payments through Sezzle
## Sezzle Order Management
### Sandbox Testing
1. On your dev/staging site, go to `Stores` > `Configuration` > `Sales` > `Payment Methods` > `Additional Payment Solutions`
2. Next to `Sezzle`, click `Configure`
3. Under `General`, update `Payment Mode to Sandbox`
4. Replace Public Key and Private Key with the API keys from your [Sezzle Merchant Sandbox Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
5. Click `Save Config`
6. On your website, add an item to the cart, then proceed to checkout and select Sezzle as the payment method
1. If customer is not tokenized, click `Continue to Sezzle`
2. If customer is tokenized, click `Place Order`
3. If In-Context checkout, click `Pay with Sezzle`
7. Sign In to Sezzle or Sign Up to continue
8. Enter the payment details using [test data](https://docs.sezzle.com/docs/api/core/test-data/#checkout-testing), then proceed to the final page
9. Check the `Approve {Website Name}` to process payments from your Sezzle account for future transactions
You may revoke this authorization at any time in your Sezzle Dashboard to tokenize your account
10. If your account is already tokenized, order will be placed without redirection
11. After payment is completed at Sezzle, you will be directed to your site's Successful Payment page
Sandbox testing is complete. You may login to your Sezzle Merchant Sandbox Dashboard to see the test order you just placed.
### Capture Payment
* The capture will be performed instantly from the extension after the order is created and validated in Magento.
* You will need to capture the payment manually from the Magento admin using the following steps:
1. 1. Navigate to `Sales` > `Orders`, find the order to capture, and click `View`
2. 2. In the upper-right of the form, click `Invoice`
3. 3. Review the order details, then click `Submit Invoice`
This will automatically capture the payment in Sezzle
### Refund Payment
1. Navigate to `Sales` > `Orders`, find the order to refund, and click `View`
2. In the upper-right of the form, click `Credit Memo` then `OK` to confirm your action
3. Review the refund details, then click `Refund Offline`
This will automatically update the Sezzle Order Status in Sezzle Merchant Dashboard to Refunded or Partially Refunded as applicable
### Release Payment
1. Navigate to `Sales` > `Orders`, find the order to release, and click `View`
2. In the upper-right of the form, click `Cancel` then `OK` to confirm your action
The Void was formerly used, but will be deprecated in future versions
This will automatically update the Sezzle Order Status in Sezzle Merchant Dashboard to Deleted due to checkout not being captured before expiration, indicating the payment has been fully released. Magento does not support partial releases.
### Order Verification in Magento Admin
1. Log in to Magento admin
2. Navigate to `Sales` > `Orders`, find the order to verify, and click `View`
| Order Status | Total Paid | Description |
| :----------- | :------------------------- | :------------------------------------------ |
| Processing | Grand Total | Payment was successfully captured by Sezzle |
| Pending | Does not equal Grand Total | Payment is authorized but not captured yet |
| Closed | N/A | Payment has been refunded |
| Canceled | N/A | Payment has been released |
### Order Verification in Sezzle Merchant Dashboard
1. Log in to Sezzle Merchant Dashboard
2. Navigate to `Orders`, then find and click the order to verify
| Order Status | Description |
| :----------------------------------------------------------- | :----------------------------------------------------------------------------------------------------- |
| Approved | Payment was successfully captured by Sezzle |
| Authorized, uncaptured | Payment was authorized but not captured yet |
| Refunded | Payment was refunded |
| Deleted due to checkout not being captured before expiration | Either the payment was not captured before the authorization expired, or the payment has been released |
### Customer Tokenization Details
1. Navigate to `Customers` > `All Customers`
* Select the customer to view tokenization details
2. If the customer is tokenized, the Sezzle tab will appear
* The `Status`, `Token`, and `Token Expiration` will appear on the tab

### Settlement Reports
1. Navigate to `Reports` > `Sales` > `Sezzle Settlement`
* A list of recent Settlement Reports will be shown
2. To make a Quick Sync, enter the From and To Date and click `Sync`
3. To view details of a report, in the `Action` column, click `View`
4. To download a report, in the `Action` column, click `Download`
* You can download the Settlement Report in `CSV` or `Excel` format

## Troubleshooting
If testing was unsuccessful, review the following:
1. Sezzle-Magento2 extension is the latest version
2. Sezzle extension is enabled
1. Go to `Stores` > `Configuration` > `Sales` > `Payment Methods` > `Additional Payment Solutions`
2. Next to `Sezzle`, click `Configure`
3. Ensure `Enabled` is set to `Yes`
3. API Keys were entered correctly, and for the correct environment
It is recommended to use the Copy icon in the [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys) to avoid typos or extra spaces
4. Cache Storage was flushed
5. Widget script is present on your website and reflects the Merchant UUID from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
1. Go to a product page on your website
2. Right-click then select `Inspect`
3. In the `Elements` tab, search for `widget.sezzle`
* If all the above checks failed, the merchant can forward the `/var/log/sezzlepay.log` to the Sezzle team at [**merchantsupport@sezzle.com**](mailto:merchantsupport@sezzle.com)
* It is always recommended to send the `system.log` and `exception.log `for better tracing of issues
# Mojo
Source: https://docs.sezzle.com/docs/plugins/mojo
This guide explains how to add Sezzle as a payment option on your Mojo website, enabling customers to use Sezzle at checkout.
### Add Payment Method
1. Log into your Mojo admin account and navigate to the Integrations tab
2. Select `Payment Systems` in the dropdown menu and click on `Sezzle` in the next window
3. Toggle `Enable` to `ON`
4. Toggle `Test Mode` to `OFF` unless you are testing your integration in Sandbox
5. Enter your Sezzle Public and Private Key within the appropriate fields

6. Ensure consistency between your webpage offers and payment options upon final checkout
* Navigate to your Site Settings to enable or disable those features that you want enabled with Sezzle
The `Hide pay-over-time solutions` switch will be automatically hidden for those customers that choose the multi-pay order option.
7. Once satisfied with your transaction flow, click the blue `Save Changes` button
* Mojo will use customer tokenization for upsells
* See [customer tokenization](http://localhost:3000/docs/api/tokenization/intro) or contact Mojo for more information
### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
# NopCommerce
Source: https://docs.sezzle.com/docs/plugins/nopcommerce
This guide explains how to add Sezzle as a payment option on your NopCommerce website, enabling customers to use Sezzle at checkout.
### Install the Sezzle NopCommerce Extension
Go to [https://www.nopcommerce.com/sezzle](https://www.nopcommerce.com/sezzle) and click`Get Extension`.
### Admin Configuration
1. Go to `Configuration` > `Local Plugins`
2. Click `Upload Plugin or Theme` and select the downloaded zipped file per the instructions given
3. After the extension has been uploaded, click `Install`
4. Under `Configuration`, go to `Payment Methods` and then click `Configure` under `Sezzle`

5. Click `Edit` from the Payment Method list
6. Copy your Merchant ID from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
* Paste it into the corresponding field in the Sezzle configuration page of your NopCommerce admin
7. Copy your Public Key and Private Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
* Paste it into the corresponding field in the Sezzle configuration page of your NopCommerce admin
8. Set `Transaction Mode` to either `Authorize` or `Authorize and Capture`
See [Authorize Only vs Authorize and Capture](/docs/guides/auth-and-capture) for details about the difference between the two choices.
9. Save the configuration

10. To restrict Sezzle usage based on billing country, go to `Configuration` > `Payment Restrictions`
11. Choose the country you want to restrict for Sezzle
Sezzle is currently available for customers from `The United States` and `Canada`.
You may wish to restrict all countries where Sezzle is not available.

12. Integration is complete
### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
# Open Cart
Source: https://docs.sezzle.com/docs/plugins/open-cart
This guide explains how to add Sezzle as a payment option on your Open Cart website, enabling customers to use Sezzle at checkout.
Sezzle supports Opencart versions 3.0.3.7.
### Installation
1. Download the Sezzle module from the Opencart Marketplace
2. In your Opencart back office, go to `Extensions` > `Installer`
3. Select `Upload` and select the .zip file that you downloaded
4. Go to `Extensions` > `Payments`
5. Find `Sezzle`, and select `Enable Module`
* The plugin is ready to be configured
To learn how to install the plugin after you've downloaded it, watch the official Opencart [video tutorial](https://www.youtube.com/watch?v=mXhRSXw_ycE\&t=3s)
### Configuration
1. In your Opencart admin, go to `Extensions` > `Payments`
2. In the `Payments` section, find `Sezzle` and select `Configure`
3. Fill out the following fields
| Field | Value |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Status | Enable or Disable |
| Public Key | Public Key from the Sezzle Merchant Dashboard |
| Private Key | Private Key from the Sezzle Merchant Dashboard |
| Test Mode | Yes or No for Testing |
| Transaction Method | Use *Authorize and Capture* to immediately capture payment when a Sezzle checkout is completed and *Authorize Only* to authorize payment when a Sezzle checkout is completed. This requires a follow up capture request from backoffice to complete payment. See [Authorize Only vs Authorize and Capture](/docs/guides/auth-and-capture) for details about the difference between the two choices. |
| Allow Tokenization | Enable to offer returning shoppers a faster checkout experience by bypassing the Sezzle checkout. |
| Enable Widget in PDP | Enable for showing the Sezzle widget on the PDP |
| Enable Widget in Cart Page | Enable for showing the Sezzle widget on the Cart Page |
| Sort Order | Enable for sorting the position of Sezzle payment option in the checkout page |
### Payment Capture
* Payment will automatically be captured during the checkout process.
1. 1. In your Opencart back office, go to `Sales` > `Orders`
2. 2. Select the order in which you want to capture the payment
3. 3. Go to the `Sezzle` tab
4. 4. Enter the capture amount
5. 5. Click `Capture Payment`
### Payment Refund
1. In your Opencart back office, go to `Sales` > `Orders`
2. Select the order for which you want to refund the payment
3. Go to the `Sezzle` tab
4. Enter the refund amount
5. Click `Refund Payment`
### Payment Release
1. In your Opencart back office, go to `Sales` > `Orders`
2. Select the order for which you want to release the payment
3. Go to the `Sezzle` tab
4. Enter the release amount
5. Click `Release Payment`
### Upgrading the module
If you are using an older Sezzle Opencart module version and want to use the latest version follow these steps:
1. Uninstall the existing Sezzle module
2. Install the latest plugin version as described in [Installation](https://docs.sezzle.com/docs/plugins/open-cart#installation)
3. Configure the latest plugin version as described in [Configuration](https://docs.sezzle.com/docs/plugins/open-cart#configuration)
# Prestashop
Source: https://docs.sezzle.com/docs/plugins/prestashop
The Sezzle module for PrestaShop can be [downloaded from GitHub](https://github.com/sezzle/sezzle-prestashop).
### Installation
1. In your PrestaShop back office, go to `Modules` > `Module Manager`
2. Select `Upload a module`, then select the .zip file that you downloaded on your computer
3. Go to `Payment` > `Payment methods`
4. Find `Sezzle`, and select `Enable Module`
* The plugin is now ready to be configured
To learn how to install the plugin after you've downloaded it, watch the official [PrestaShop video tutorial](https://www.youtube.com/watch?v=nG3VSMQ593s)
### Configuration
1. In your PrestaShop back office, go to `Modules` > `Module Manager`
2. In the `Payment` section, find `Sezzle` and select `Configure`
* Fill out the following fields:
| Field | Value |
| :-------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Live Mode | Enable or Disable for testing |
| Merchant ID | Merchant ID that you got from [Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business) |
| Public Key | Public Key that you got from [Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys) |
| Private Key | Private Key that you got from [Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys) |
| Payment Action | `Authorize and Capture` for instant capture and `Authorize Only` for just authorization (needs to be captured manually from backoffice) See [Authorize Only vs Authorize and Capture](/docs/guides/auth-and-capture) for details about the difference between the two choices |
| Allow Customer Tokenization | Enable to offer returning shoppers a faster checkout experience by saving their card details |
| Enable Widget | Enable for showing Sezzle widget in PDP and Cart Page |

### Payment Capture
* Payment will automatically be captured during the checkout process.
1. 1. In your Opencart backoffice, go to `Orders` > `Orders`
2. 2. Select the order for which you want to capture the payment
3. 3. In the `Payment` section right below, enter the below information and click `Add`
4. * Date
5. * Payment method
6. * Amount
7. 4. Change the `Order Status` to `Payment Accepted` if capture is successful

### Payment Refund
1. In your PrestaShop backoffice, go to Orders > Orders
2. Select the order for which you want to refund the payment
3. Click on Partial Refund, enter the amount and click on Partial Refund right below
4. For Full Refund, you have to fill up all the order related amounts in respective places
5. Change the Order Status to Refunded only if full refund is successful

### Payment Release
1. In your PrestaShop backoffice, go to `Orders` > `Orders`
2. Select the order for which you want to refund the payment
3. Change the `Order status` to `Cancelled` and click `Update Status`

### Upgrading the module
If you have an existing Sezzle PrestaShop module installed and want to upgrade a new version, proceed as follows:
1. Uninstall the existing Sezzle module
2. In the Upgrade drop-down menu select `Uninstall`
Manually remove the `/sezzle` folder from the `/modules` folder (if not removed during uninstall action)
3. [Install](https://docs.sezzle.com/docs/plugins/prestashop#installation) the latest plugin version
4. [Configure](https://docs.sezzle.com/docs/plugins/prestashop#configuration) the latest plugin version
### Reinstallation
When you reinstall the plugin, the plugin takes care of most of its configurations and functions except for the items listed below. We recommend that you follow the steps here to make sure that when you reinstall the plugin, it won't pick up settings from a previous installation.
**Order status**
* The plugin keeps the `Awaiting Sezzle Payment` order status because existing orders might still use them. If you would also like to remove these statuses, first make sure that these are no longer in use.
* To check if the status is in use:
1. Go to the `Orders` page in your Prestashop admin panel
2. Filter the orders for the `Awaiting Sezzle Payment` order status
3. If there are any, move them to another status that you would like to use
* When there are no more orders using this status, you can delete the status from your order status list
**Configurations**
The plugin keeps the `AWAITING_SEZZLE_PAYMENT` configuration fields in your database in case there are still orders in your system with the corresponding statuses. If you have already removed the status, you can also remove these leftover configurations.
# Salesforce Commerce Cloud
Source: https://docs.sezzle.com/docs/plugins/salesforce-commerce-cloud
This guide explains how to add Sezzle as a payment option on your Salesforce Commerce Cloud website, enabling customers to use Sezzle at checkout. This integration supports sites built with both the SiteGenesis and Reference Architecture.
See [Authorize Only vs Authorize and Capture](/docs/guides/auth-and-capture) for details about the difference between the two choices.
### Installation
* Get the [Sezzle Cartridge for B2C Commerce](https://appexchange.salesforce.com/appxListingDetail?listingId=a0N4V00000JhSz3UAF\&tab=e) on the Salesforce AppExchange or directly from [GitHub](https://github.com/sezzle/sezzle-commerce-cloud)
* Installation instructions are included in the [documentation](https://github.com/sezzle/sezzle-commerce-cloud/tree/production/documentation)
* If you need further assistance with our Salesforce cartridge, please contact our team by [submitting a support request](https://merchant-help.sezzle.com/hc/en-us/requests/new)
# Shift4Shop
Source: https://docs.sezzle.com/docs/plugins/shift4shop
This guide explains how to add Sezzle as a payment option on your Shift4Shop website, enabling customers to use Sezzle at checkout.
Only 3D Cart legacy merchants can use Sezzle at the moment.
### Install the Sezzle Shift4Shop Extension
1. Log in to your website's Shift4Shop admin
2. Get the [app](https://apps.shift4shop.com/sezzle)
3. Copy and paste your Store URL into the input area, then click `Proceed`

4. Check the PCI Compliance box, then click `Acknowledge and Authorize the App` to start the installation
### Admin Configuration
1. In your Shift4Shop admin, go to Settings > Payment
2. Click Select Payment Methods

3. Turn the `Sezzle` switch to `On`
4. Copy your Public Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Paste it into the corresponding field in the Sezzle configuration page of your Shift4Shop admin
5. Next to Private Key, click `Change`
6. Copy your Private Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Paste it into the corresponding field in the Sezzle configuration page of your Shift4Shop admin
7. Click `Save`

8. To restrict Sezzle usage by country, click the `Exclude List` hyperlink under the `Sezzle` switch
9. Click `Add Location`
10. Select the desired country, then click `Add`

Installation is complete!
### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
### Troubleshooting
If testing was unsuccessful, review the following:
1. Sezzle Shift4Shop extension is the most updated version
2. Sezzle payment method is enabled
3. [API Keys](https://dashboard.sezzle.com/merchant/settings/apikeys) were entered correctly
It is recommended to use the Copy icon in the [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys) to avoid typos or extra spaces
4. If you have multiple accounts with Sezzle, the merchant ID and API Keys are tied to only one URL
5. Widget script is present on your website and reflects the Merchant ID from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
1. Go to a product page on your website
2. Right-click then select `Inspect`
3. In the `Elements` tab, search for `widget.sezzle`
### Manual Theme Integration
If the Shift4Shop app fails to maintain the widget script on the product pages, or to add the script manually for additional pages, complete the following steps:
1. From your Shift4Shop admin, go to `Settings` > `Design` > `Themes & Styles`
2. In your Current Theme, click the button labeled `More` then select `Edit Template (HTML)`
3. Find the copy of your theme under `Go to Folder`
4. Click the gear icon next to the `product_items.html` file, then click `Edit`
5. When the dashboard asks if you want to edit your theme files, click the `Edit Theme Files` button
6. In the Source Code text area, copy and paste the script at the very beginning of the file
7. Click `Save`
### Insert Script into Webpage
Template:
```
```
Update `{sezzle_merchant_uuid}` in the above script template to reflect your site’s Merchant ID (removing the curly brackets), which can be found in the [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business).
Example:
```
```
* Instructions may vary slightly depending on your active plug-ins.
* For assistance with widget configuration, click `Request Addition of Widgets` in the widget step of your [Sezzle Merchant Dashboard Setup Checklist](https://dashboard.sezzle.com/merchant/checklist).
### Uninstall Steps
1. Go to `Settings` > `Payment`
2. Click `Select Payment Methods`
3. Under the Sezzle App, click the gear icon then click `Delete`
# Shopify Payments
Source: https://docs.sezzle.com/docs/plugins/shopify-payments
This guide explains how to add Sezzle as a payment option on your Shopify website, enabling customers to use Sezzle at checkout.
### Install the Sezzle Payments App
1. Log in to your website's Shopify admin
2. Install the [Sezzle Payments app](https://apps.shopify.com/sezzle-payments)
1. Go to `Settings` > `Payments`
2. Under `Supported Payment Methods`, click `Add Payment Method`
3. Search for `Sezzle`
4. Click the result in the dropdown, then click `Sezzle Payments`
5. Click `Manage Account`
6. Click `Install`
3. Enter your production Sezzle public and private API keys
* For most merchants, we are able to pre-fill the public and private API keys based on the Shopify store
* If we cannot uniquely identify the merchant based on the Shopify store, you will be required to fill in the keys
4. Click `Save` to verify your Sezzle account
* You will be redirected to the payment settings page, where you will need to activate Sezzle Payments for your store
5. Click `Activate`
6. Verify Sezzle is available as a payment method for your store

You should see `Sezzle Payments` installed in your `Settings` > `Payments`
Without activating Sezzle Payments, Sezzle will not appear in the checkout,
and the installation process is not complete. Verify this step has been
completed.

### Validate
For Sandbox testing, do this step first
1. Navigate to `Settings` > `Payments` > `Sezzle Payments`
2. Click `Manage`, check `Enable test mode`, and click `Save`
3. Click the `Manage` button in Sezzle Payments, enter your sandbox API keys in the test tab
4. Click `Update settings`
For Live testing, do this step first
1. In the Sezzle configuration page of your Shopify admin, enter the API keys from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
2. Uncheck the `Enable Test Mode` checkbox
3. Save the configuration
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
### Adding the Sezzle Tile to Accepted Payment Methods Footer
The Shopify "Accepted Payment Methods" footer widget does not support third-party payment apps by default. To show Sezzle in this section, follow the [instructions provided by Shopify](https://help.shopify.com/en/manual/online-store/themes/themes-by-shopify/vintage-themes/customizing-vintage-themes/add-credit-card-icons), adding `'sezzle'` to the list.
### Troubleshooting
If testing was unsuccessful, review the following:
**Sezzle Payments Shopify extension is the most updated version**
* Go to `Apps` > `Sezzle Payments`, then click `About`
* If there is an option to upgrade, do so now
**Sezzle gateway is activated**
* Go to `Settings` > `Payment Providers` and ensure "Sezzle is active" is listed under the `Alternative Payment Methods` section
**API keys were entered correctly**
* Use the Copy icon in the Sezzle Merchant Dashboard to avoid typos or extra spaces
* If you have multiple accounts with Sezzle, the merchant ID and API keys are tied to only one URL
### Uninstall the Sezzle Payments App
1. Go to `Apps`
2. Find `Sezzle Payments` and click `Delete`

### FAQs
Sezzle aligns with your Shopify `Payment Capture` settings. If set to `Manual`, you must manually capture payments for Sezzle orders. Authorization periods differ by merchant, so check the expiration in the Sezzle Merchant Dashboard under [Settings > eCommerce](https://dashboard.sezzle.com/merchant/settings/ecommerce) and adjust as needed.
Install using an incognito browser. Go to `https://your-store.myshopify.com/admin/settings/payments/alternative-providers/1057901`, replacing `your-store.myshopify.com` with your store’s URL. Log in and follow the steps to complete installation. For another store, close and start a new incognito session.
In Shopify, open the order and select `Information from the gateway`. The payment ID will match the Reference-ID in the Sezzle Merchant Dashboard.


You can also search Shopify Admin using `receipt.payment_id:`.

No, Sezzle lacks permissions to view or modify Shopify inventory, so this feature is not supported with the new payment app.
Yes, refunds for orders via the legacy gateway can be processed normally from the Shopify Orders page.
# Shopify Widgets
Source: https://docs.sezzle.com/docs/plugins/shopify-widgets
Shopify has disabled the legacy `Sezzle` private/unpublished widget app. If you are currently using the `Sezzle` app, please update to the `Sezzle Widget` public app now.
## Purpose
Increase AOV and conversions by promoting Sezzle on your storefront. Easily install assets to product and cart pages with the Sezzle Widget app.
## Prerequisites
1. You should have a Sezzle merchant account
* Please visit our [signup page](https://dashboard.sezzle.com/merchant/signup) if you don't have an account
2. [Install and configure](https://docs.sezzle.com/docs/plugins/shopify-payments/) the Sezzle Payments App
## Getting Started
1. Log in to your website's Shopify admin
2. Install the [Sezzle Widget app](https://apps.shopify.com/sezzle-widget)
* Alternatively, click the `Get the Widgets App` button under the `Add Sezzle to your product and cart pages` step of the Sezzle Merchant Dashboard Setup Checklist
3. Click `Install`

4. Within the Sezzle Widget app, enter your Public API Key and click `Link Sezzle Account`
* For most merchants, we are able to pre-fill the public API key based on the Shopify store URL
* To enter the API key manually, copy from the API Keys page within the [Sezzle Merchant Dashboard Settings](https://dashboard.sezzle.com/merchant/settings/apikeys)

## Installation
Please select ONE of the following installation methods:
[Jump to section](#installation-wizard)
[Jump to section](#installing-as-embed-blocks-manual)
[Jump to section](#installing-as-app-blocks)
### Installation Wizard
1. Select the theme you wish to edit, then click `Next`
This field does not default to your live theme - you must make a selection

2. Select the asset you wish to install, then click `Next`

3. Select the page you wish to install on, then click `Finish`

4. Click the `Activate` button
You must click Activate for changes to take effect
5. [Customize](#customizations) as desired, then click `Save`
### Installing as Embed Blocks (manual)
If you are not already in the app, you can alternatively enable the Sezzle products directly from your theme customizer window.
1. Within Shopify Admin, go to `Sales Channels` then `Online Store`
2. Under `Themes`, click `Customize` for the theme you wish to edit

3. In the upper-left corner, click the third icon `App Embeds`
4. Search for Sezzle and activate the product(s) you wish to install
* [Customize](#customizations) as desired and click `Save`

### Installing as App Blocks
App blocks allow merchants to control product placement. Compatible with 2.0 themes only.
1. Within `Shopify Admin`, go to `Sales Channels` then `Online Store`
2. Under `Themes`, click `Customize` for the theme you wish to edit

3. In the top toolbar, ensure the third icon `Activate Inspector` is activated
#### Installing Widget App Block on Product Page
1. Navigate to a product page
2. Hover over the area where you wish to display the widget
3. If app blocks can be placed there, `+` or `Add block` will appear. Click, then select `Sezzle Widget` under the `Apps` tab
* Alternatively, open the `Sections` tab and click `Add Block`
* Under the `Apps` tab, select `Sezzle Widget`
* Drag & drop the block to the desired location in the contents menu

4. [Customize](#customizations) as desired, then click `Save`
#### Installing Widget App Block and Checkout Button on Cart Page
1. Add a product to the cart
2. Navigate to the cart page
3. Hover over the area where you wish to display a Sezzle product
4. If app blocks can be placed there, `+` or `Add block` will appear
* Click, then under the `Apps` tab, select the product
* Alternatively, open the `Sections` tab and click `Add Block`
* Under the `Apps` tab, select `Sezzle Widget`
* Drag & drop the block to the desired location in the contents menu
5. Repeat the previous two steps for the other product, if desired

6. [Customize](#customizations) as desired, then click `Save`
### Customizations
The following section covers customization options that are available through the app.
#### Widget Customization Options
| **Property** | **Default** | **Range/Options** | **Step** |
| :----------- | :---------- | :---------------- | :------- |
| Font Size | `14px` | `9px` - `18px` | `0.5` |
| Font Family | inherit | (see dropdown) | - |

#### Checkout Button Customization Options
| **Property** | **Default** | **Range/Options** | **Step** |
| :-------------------------------- | :--------------------- | :-------------------- | :------- |
| Template | `Checkout with Sezzle` | `Pay with Sezzle` | - |
| Theme | `Light` | `Dark` | - |
| Padding (left and right only) | `9px` | `0px` - `30px` | `0.5` |
| Margins (controlled individually) | `0` | `-20` - `20` | `0.5` |
| Width | `auto` | `fit-content`, `100%` | - |

### Default Placement
**If Checked**
* The Sezzle Checkout Button will be placed after the native checkout button and inherit page styles
**If Unchecked**
* The button will be placed as indicated by the app block placement
* Styles may also be affected, based on the placement selected
#### Custom CSS
If you are familiar with CSS and would like additional style customizations, you can write them directly to your theme.
1. In the upper-left corner, click the second icon `Theme Settings`
2. Expand Custom CSS section and write your custom snippet, then click `Save`

### Troubleshooting
You will need to uninstall and re-install the app.
If you are using app blocks and there are multiple price elements on the page, all the corresponding widgets will cluster at the app block placement.
Consider switching to embed blocks, or [contact Sezzle support](#request-help) to update the config override.
* Widgets will only show for IP addresses in US and CA. If you are viewing from a different country, please use a VPN.
* By default, widgets only show on products up to \$2500.
* Confirm that only one installation method is in use. Additionally, only use one app block of each product per page.
Check that the widget was not placed further down on the page.
* App blocks might work where embed blocks do not.
* Otherwise, [contact Sezzle support](#request-help) for a custom configuration.
*
* Please [contact Sezzle support](#request-help) to update the override.
* Remove these snippets from your theme.
* App blocks with `Default Placement` unchecked may work.
* We usually resort to installing a [manual code snippet](#checkout-button-manual-theme-code-snippet-installation).
* [Contact Sezzle support](#request-help) if you would like assistance.
If you have noticed a bug in the widget or checkout button, please [contact Sezzle support](#request-help) to notify us of the issue. We can then determine whether this is an issue for all merchants or your specific theme and work to resolve accordingly.
#### Customization
* We offer a few select customization options. Please [contact Sezzle support](#request-help) to request any of the following:
* Grayscale logo
* Reflect checkout minimum in widget
* Reflect Sezzle/Afterpay dual widget
* Style & position changes
* For position changes, you must use the embed block option.
* Conditional rendering for subscription, gift cards, etc.
* Conditional rendering above a certain price threshold
Implementing customizations may prevent widgets from showing on unpublished
themes and will require help from the Sezzle team to update widgets when a
new theme is published.
### Request Help
If the `Sezzle Widget` app is not able to automatically install the Sezzle widget or checkout button on your storefront, please use the Request Help form within the app to contact the Sezzle Merchant Integrations team.
The Request Help form in the `Sezzle Widget` app is for widget and checkout button help only. For questions regarding your account or issues with the Sezzle payment option at checkout, please reach out to [merchantsupport@sezzle.com](mailto:merchantsupport@sezzle.com).
The Sezzle Merchant Integrations team does not respond to inquiries. If you
request a response or if we need to contact you regarding your request, we
will forward the response through our Merchant Support team.

### Manual Theme Code Snippet Installation
Installations that require code changes directly to the theme are not recommended unless your site uses a headless CMS, and should be used as a last resort.
#### Widget Manual Theme Code Snippet Installation
1. Within `Shopify Admin`, go to `Sales Channels` then `Online Store`
2. Under Themes, click `...` then `Edit Code` for the theme you wish to edit

3. In the `Code Explorer`, go to the `Layout` folder and select the `theme.liquid` file
4. Copy and paste the script to the very bottom of the file
* Script template to be inserted into your webpage:
```
```
5. Replace `{sezzle_merchant_uuid}` (including the curly brackets) in the script template with your site’s Merchant ID
* This can be found in the [Sezzle Merchant Dashboard Business Settings](https://dashboard.sezzle.com/merchant/settings/business)
* Example with Merchant ID value updated:
```
```
6. Click `Save`
#### Checkout Button Manual Theme Code Snippet Installation
To install the checkout button directly to your theme code, please refer to the documentation and snippet on [GitHub](https://github.com/sezzle/static-widgets/tree/production/src/sezzle-checkout-button#install-as-html).
## Uninstalling
### Uninstalling Embed Blocks
1. Within `Shopify Admin`, go to `Sales Channels` then `Online Store`
2. Under `Themes`, click `Customize` for the theme you wish to edit

3. In the upper-left corner, click the third icon `App Embeds`
4. Toggle the desired embed block(s) to the `OFF` position, then click `Save`

### Uninstalling App Blocks
1. Within `Shopify Admin`, go to `Sales Channels` then `Online Store`
2. Under `Themes`, click `Customize` for the theme you wish to edit

3. Navigate to a product page
4. In the upper-left corner, click the first icon `Sections`
5. Next to the `Sezzle Widget` block, click the `Delete` trash can icon, then click `Save`
6. Navigate to the cart page, and repeat the previous step for each product, then click `Save`

### Uninstalling Manual Theme Code Snippet
You should only need to perform this step if you had the old `Sezzle` private app installed, or if you installed products manually
1. Within `Shopify Admin`, go to `Sales Channels` then `Online Store`
2. Under `Themes`, click `...` then `Edit Code` for the theme you wish to edit

3. Review the layout/theme.liquid file for any Sezzle code snippets
1. Remove them, then click `Save`
2. Repeat for any files containing product and cart in the name
4. Once all references are removed, search for files containing sezzle in the name, and delete
### Uninstalling the App
1. Go to `Apps` then `Sezzle Widget`
2. In the top-right corner, click the `Menu` icon, then select `App Settings`
3. Click `Delete App`
Deleting the app will automatically remove all app blocks and embed blocks from all themes. Any code change installations will not be removed automatically.
# Shoplazza
Source: https://docs.sezzle.com/docs/plugins/shoplazza
This guide explains how to add Sezzle as a payment option on your Shoplazza website, enabling customers to use Sezzle at checkout.
### Install the Sezzle Shoplazza app
1. Log in to your website's Shoplazza admin
2. Go to `Settings` > `Payments`
3. Click `Add payment provider`

4. On the `Search by payment methods` tab, type `Sezzle` into the search bar, and select it from the results

5. Click `Activate`

### Admin Configuration
1. Go to `Settings` > `Payments`
2. Click `Manage`
3. Copy your Private Key and Public Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Paste them into the corresponding fields
4. Click `Activate`

### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.

### Troubleshooting
*Coming soon*
### Uninstall the Sezzle Shoplazza app
1. Go to `Settings` > `Payments`
2. Click `Manage`

3. Click `Disable`

### FAQs
*Coming soon*
# Shopware 5
Source: https://docs.sezzle.com/docs/plugins/shopware-5
This guide explains how to add Sezzle as a payment option on your Shopware 5 website, enabling customers to use Sezzle at checkout. Additionally, it includes steps to upgrade existing integrations to the latest version of the plugin.
Sezzle's Shopware 5 plugin can be [downloaded from GitHub](https://github.com/sezzle/sezzle-shopware5).
### Install the Sezzle Shopware 5 Plugin
In the following section, `[Shopware]` refers to your Shopware 5 root directory.
#### Using the Composer
Go to the Shopware 5 installation directory, then run the below commands:
1. Open terminal and navigate to `Shopware` root path
2. Run the below command for the adding the plugin into your codebase
```
composer require sezzle/shopware5
```
#### Manual Method
1. Download the `.zip` or `tar.gz` file from Sezzle's GitHub repository
2. Unzip the file
3. Navigate to Shopware `[Shopware]/custom/plugins/` either through SFTP or SSH
4. Copy `SwagPaymentSezzle` directory from unzipped folder to `[Shopware]/custom/plugins/`
5. Log in to Shopware 5 Backend and navigate to `Configuration` > `Plugin Manager` > `Management` > `Installed`
6. Find `Sezzle` from the `Uninstalled` list and click on the `+` button to install the plugin
* Once installed, you will see `Sezzle` under `Inactive` list
7. Click on the `x` button to activate the plugin
* After successful activation, you will be able to see `Sezzle` under `Configuration` > `Payment Methods`
### Upgrade the Shopware 5 Plugin
#### Using the Composer
1. Change the version number of the `sezzle/sezzlepay` inside `composer.json`
2. Open terminal and navigate to `Shopware` root path
3. Run the following command for the updating the plugin to a newer version
```
composer update sezzle/sezzlepay
```
#### Manual Method
1. Download the `.zip` or `tar.gz` file from Sezzle's GitHub repository
2. Unzip the file
3. Delete the contents from `[Shopware]/custom/plugins/SwagPaymentSezzle`
4. Copy the contents of `SwagPaymentSezzle` directory from unzipped folder to `[Shopware]/custom/plugins/SwagPaymentSezzle/`
5. Log in to Shopware Backend and navigate to `Configuration` > `Cache/performance`
6. Flush the cache storage by selecting `Clear shop cache`
### Configure Sezzle
#### Payment Configuration
1. Make sure you have the Merchant UUID and the API Keys from the [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/)
You must be registered with [Sezzle](https://dashboard.sezzle.com/merchant/signup) to access the Merchant Dashboard
2. Navigate to `Customers` > `Payments` > `Sezzle` > `Settings` in your Shopware Backend
3. Enable Sezzle by checking the `Enable` for this shop checkbox
4. Set the Public Key and Private Key
5. For testing, enable the Sandbox mode by checking the `Enable sandbox` checkbox
You can also verify your `API Keys` by clicking on the `Test API Settings`button
6. Set the Merchant UUID
7. Set the Merchant Location as per the store origin
8. Check the `Enable Tokenization` checkbox to enable customer tokenization in the Sezzle checkout
* If the customer agrees to be tokenized, then future checkouts for this customer will not require a redirect to Sezzle
* See [Customer tokenization](/docs/api/tokenization/intro)
9. Set `Payment Action` as `Authorize only` for doing payment authorization only and `Authorize and Capture` for doing instant capture
See [Authorize Only vs Authorize and Capture](/docs/guides/auth-and-capture) for details about the difference between the two choices
10. Check the `Enable Widget in PDP` checkbox to add the widget script and the Sezzle Widget Modal to the Product Display Page
11. Check the `Enable Widget in Cart` checkbox to add the widget script and the Sezzle Widget Modal to the Cart Page
12. Check the `Display errors` checkbox for showing up Sezzle related error code in the web URL on failure
13. Set `Logging` to `ERROR` to log only error messages or `ALL` to log all messages, including errors, warnings, and notices
14. Save the settings and clear the cache

Your store is now ready to accept payments through Sezzle!
### Frontend Functionality
* If you have successfully installed the Sezzle plugin, then Sezzle will be included as a payment method in the checkout page.
1. Select `Sezzle` and continue
2. Once you click `Complete Payment`, you will be redirected to Sezzle Checkout to complete the checkout
If your account is already tokenized, skip the next two steps as you will not be redirected to Sezzle
3. \[Optional] On the final page of Sezzle Checkout, check the `Approve {Store Name}` to process payments from your Sezzle account for future transactions
* You may revoke this authorization at any time in your Sezzle Dashboard to tokenize your account
4. Click on `Complete Order` to complete your purchase
* On successful order placement, you will be redirected to the order confirmation page

### Capture Payment
**If Payment Action is set to Authorize and Capture**
* Capture will be performed instantly from the plugin after order is created and validated in `Shopware`
**If Payment Action is set to Authorize**
* Capture needs to be performed manually from the `Shopware` backend. Follow the below steps to capture:
1. Go the order and click on `Sezzle` tab
2. Enter a value in `Amount` field
3. Click on `Capture` to capture the payment in Sezzle
### Refund Payment
1. Go the order and click on `Sezzle` tab
2. Enter a value in `Amount` field
3. Click on `Refund` to refund the payment in Sezzle
### Release Payment
1. Go the order and click on `Sezzle` tab
2. Enter a value in `Amount` field
3. Click on `Release` to release the payment in Sezzle
### Order Verification in Shopware Backend
Merchants should always check the payment status and amount of all orders. The following steps ensure that each action has been completed as expected.
1. Log in to Shopware admin and navigate to `Customers` > `Orders`

2. Proceed into the corresponding order
* Payment is **successfully captured** by Sezzle when
* `Current Payment Status` `=` `Completely Paid`
* `Capture Amount` `=` `Auth Amount`
* Payment is only **authorized** when
* `Current Payment Status` `=` `Open`
* `Auth Amount` `=` `Order Amount`
* `Capture Amount` `=` `0`
* Payment is **refunded** when
* `Current Payment Status` `=` `Re-crediting`
* `Refund Amount` `=<` `Capture Amount`
* Payment is **released** when
* `Current Payment Status` `=` `The process is cancelled for a full release or Open for a partial release`
* Amount will be deducted from `Auth Amount` and should appear in `Released Amount`

### Order Verification in Sezzle Merchant Dashboard
1. Log in to Sezzle Merchant Dashboard and navigate to `Orders`
2. Proceed into the corresponding order
| Payment Status | Description |
| :----------------------------------------------------------- | :---------------------------------------------------------------- |
| Approved | Payment successfully captured |
| Authorized, uncaptured | Payment authorized but not captured |
| Refunded or Partially Refunded | Payment refunded |
| Deleted due to checkout not being captured before expiration | Payment released or not captured before the authorization expired |
### Customer Tokenization Details
1. Log in to Shopware Backend and navigate to `Customers` > `Customers`
2. Select customer to view tokenization details
* `Sezzle Customer UUID`, `Sezzle Customer UUID Expiry` and `Sezzle Customer UUID Status` will appear under `Free text fields`

### Validate
Step through a [test checkout](/docs/api/test-cards#live-checkout-testing) to validate the integration is properly installed
### Troubleshooting
* `Sezzle` plugin creates logs of `Sezzle` action
* In the event that Merchant Success and Support teams are unable to resolve any issue, the Merchant may request that these logs be forwarded to the Platform Integrations team for further troubleshooting
* Logs are named as `plugin_dev-.log`
* To facilitate troubleshooting, we recommend sending the `core_dev-.log` as well
* Logs can be find in `[Shopware]/var/log/`
# Wix
Source: https://docs.sezzle.com/docs/plugins/wix
This guide explains how to add Sezzle as a payment option on your Wix website, enabling customers to use Sezzle at checkout.
### Add Payment Method
1. From your Wix store dashboard, select `Settings`, and `Accept Payments`
2. Choose the `See More Payment Options` link at the bottom of the page
3. Locate `Sezzle` in the list, and choose `Connect`
* This takes you to the Connect Sezzle page
4. Enter your API Keys from the [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys) and choose `Connect`
* Sezzle will now be available as a payment method at checkout
### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
### Troubleshooting
For account connection problems, check the following:
1. API Keys were entered correctly
To avoid typos or extra spaces, use the Copy icon in the [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys).
2. If you have multiple accounts with Sezzle, each store has its own merchant ID and API Keys that are tied to the store's URL
If Sezzle does not appear as a payment option during live testing:
* Ensure that Sezzle is activated as a payment provider on your site.
* Go to `Settings` > `Accept Payments` and ensure that `Accepting Payments` is displayed for Sezzle.
# WooCommerce
Source: https://docs.sezzle.com/docs/plugins/woocommerce
This guide explains how to add Sezzle as a payment option on your WooCommerce website, enabling customers to use Sezzle at checkout.
### Install the Sezzle WooCommerce Extension
1. Log in to your website's Wordpress admin
* Ex: `your-website.com/wp-admin`

2. In the left sidebar, click `Plugins` > `Add New`
3. Search for `Sezzle`
4. Click `Install Now`

5. Click `Activate`

### Admin Configuration
1. In the left sidebar, click `WooCommerce` > `Settings`
2. Select the `Payments` tab

3. Click the `Manage` button for Sezzle

4. Check the `Enable/Disable` checkbox for enabling Sezzle
5. Check the Payment option availability in other countries if you want to allow Sezzle outside of US and Canada
* Sezzle operates only in `US` and `Canada`
* Be sure to check this option
6. Set Merchant ID as received from the Business section of [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant)
7. Copy your Private Key and Public Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys), and paste them into the corresponding fields
8. Check the `Create order post checkout completion` checkbox for enabling WooCommerce order creation only after Sezzle checkout is successfully completed
This will only work with standard classic checkout, not with checkout blocks
9. Set `Minimum Checkout Amount` if you want to restrict Sezzle based on a minimum order total
10. Set the `Transaction Mode` as `Live` for production and `Sandbox` for sandbox testing mode
11. Check the `Show Sezzle widget in product pages` checkbox for adding widget script in the Product Display Page, which allows enabling Sezzle Widget Modal in PDP
* After saving if you don't see the widget in PDP, try [installing it manually](#manual-widget-installation)
12. Configure the installment plan widget under Installment Plan Widget Configuration settings
13. Check the `Enable Installment Widget Plan in Checkout page` checkbox for enabling installment widget plan
14. Set the `Order Total Container Class Name`
* Default is `woocommerce-Price-amount`
15. Set the `Order Total Container Parent Class Name`
* Default is `order-total`
16. Check the `Enable Logging` checkbox for logging Sezzle checkout related data
* This is helpful for debugging issues, if encountered
17. Click `Save Changes`
### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
### Important Note on Order Fulfillment
Before shipping the order, ensure that the Order Notes in the WooCommerce interface show the order status is `Processing` and include `Payment approved by Sezzle`. When these notes exist, you know that the customer completed the checkout at Sezzle, and you will be paid for the order.
WooCommerce will create an order regardless of whether the customer completes the checkout at Sezzle. Check the Order Notes and do not fulfill orders where the Sezzle checkout is not completed.
### Manual Widget Installation
#### Using Elementor?
Within the Elementor Page Builder, drag and drop the Custom HTML block type into the site footer, adding the widget script snippet into the code box, then save and publish changes.
1. In your WooCommerce account, go to `Appearance`, and then `Theme Editor`
2. Click `Theme Footer` to the right of the page
3. In the Content text area, insert the script on the last line of the code, and click `Update File`
* The script below is what you will need to insert:
```
```
* You will need to update the in the above script to reflect your store’s UUID.
* You can find your UUID in your Sezzle dashboard, under `Settings`, and then `Business`.
* When you enter your UUID, please make sure that you remove the surrounding it.
### Troubleshooting
If testing was unsuccessful, review the following:
1. Sezzle WooCommerce extension is the most updated version
1. Go to `Plugins` > `Installed Plugins`
2. Click `View Details` next to the `Sezzle WooCommerce Payment`
3. If there is an option to upgrade, do so now
2. Sezzle extension is activated
1. Go to `WooCommerce` > `Settings`
2. Ensure the switch is turned `On`
3. Merchant ID was entered correctly
4. API Keys were entered correctly
It is recommended to use the Copy icon in the [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys) to avoid typos or extra spaces
5. If you have multiple accounts with Sezzle, the merchant ID and API Keys are tied to only one URL
6. Show Sezzle widget in product pages box is checked
7. Widget script is present on your website and reflects the Merchant ID from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
1. Go to a product page on your website
2. Right-click then select `Inspect`
3. In the `Elements` tab, search for `widget.sezzle`
### Uninstall Steps
1. Go to `Plugins` > `Installed Plugins`
2. Under `Sezzle WooCommerce Payment`, click `Deactivate` then click `Delete`
# Zoey
Source: https://docs.sezzle.com/docs/plugins/zoey
This guide explains how to add Sezzle as a payment option on your Zoey website, enabling customers to use Sezzle at checkout.
### Install the Sezzle Zoey Extension
Contact [Zoey Support](https://www.support.zoey.com/) to install the Sezzle app.
### Admin Configuration
1. Go to `Set-up` > `Payment Methods` > `Sezzle`
2. Click `Configure`

3. Configure the extension
1. Set `Enabled` to `Yes`
2. Copy your Merchant ID from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
* Paste it into the corresponding field in the Sezzle configuration page of your Zoey admin
3. Copy your Public Key and Private Key from your [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Paste them into the corresponding fields in the Sezzle configuration page of your Zoey admin
4. Widget Script Placements
* If you want the widget script added to the Product Display Page, set `Add Widget Script in PDP` to `Yes`
* If you want the widget script added to the Cart Page, set `Add Widget Script in Cart Page`to `Yes`
5. Set `Payment from Applicable Countries` to `Specific Countries`
6. Set `Payment from Specific Countries` to `United States` or `Canada` as applicable
7. Save the configuration

8. Click `Advanced/Refresh Your Store`
Installation is complete!
### Validate
Step through a [test checkout](/docs/api/test-cards#checkout-testing) to validate the integration is properly installed.
# null
Source: https://docs.sezzle.com/fr/docs/api/core/authentication/postauthentication
# null
Source: https://docs.sezzle.com/fr/docs/api/core/interest/getv2activity
# null
Source: https://docs.sezzle.com/fr/docs/api/core/interest/getv2balance
# null
Source: https://docs.sezzle.com/fr/docs/api/core/orders/deletev2deletecheckoutbyorder
Si vous redirigez un client vers le paiement Sezzle et que vous annulez ensuite la commande dans votre plateforme de commerce électronique, appelez rapidement ce point de terminaison pour empêcher le client de finaliser le paiement Sezzle.
# null
Source: https://docs.sezzle.com/fr/docs/api/core/orders/getv2order
# null
Source: https://docs.sezzle.com/fr/docs/api/core/orders/index

1. Le marchand appelle `/v2/session` avec la commande et l'intention de `AUTH` ou `CAPTURE`. Optionnellement, le marchand peut envoyer les informations du client.
2. Sezzle renvoie l'uuid de la commande et l'URL de paiement.
3. Le marchand redirige le client vers l'URL de paiement Sezzle.
4. Le client termine le paiement Sezzle et est redirigé vers l'URL de fin de session.
* Si l'intention était de `CAPTURE`, Sezzle capturera le montant total de la commande.
* Si l'intention était de `AUTH`, Sezzle n'autorisera que le montant total de la commande et le marchand pourra appeler `/v2/order` plus tard pour libérer ou capturer des montants en utilisant l'uuid de la commande.
## Méthodes Prises en Charge
# null
Source: https://docs.sezzle.com/fr/docs/api/core/orders/patchv2checkout
# null
Source: https://docs.sezzle.com/fr/docs/api/core/orders/postv2capturebyorder
# null
Source: https://docs.sezzle.com/fr/docs/api/core/orders/postv2reauthorizebyorder
Veuillez noter les points suivants lors de la réautorisation d'une commande.
* Une nouvelle commande sera créée
* L'intention sera définie sur AUTH
* Le reference\_id sera le même que celui de la commande originale
* Le montant réautorisé sera un nouveau plan de versements pour le client
Les réautorisations ne sont pas garanties d'être approuvées. Il est extrêmement important de noter que cette API renverra un succès 200 si la demande de réautorisation est réussie (c'est-à-dire sans erreurs) mais que le client n'a pas été approuvé.
Assurez-vous de vérifier la valeur**approved**de l'autorisation pour déterminer si la commande de réautorisation a été créée.
# null
Source: https://docs.sezzle.com/fr/docs/api/core/orders/postv2refundbyorder
# null
Source: https://docs.sezzle.com/fr/docs/api/core/orders/postv2releasebyorder
# null
Source: https://docs.sezzle.com/fr/docs/api/core/orders/postv2upchargebyorder
Cette API est en cours de développement et sera disponible prochainement.
# null
Source: https://docs.sezzle.com/fr/docs/api/core/sessions/getv2session
# null
Source: https://docs.sezzle.com/fr/docs/api/core/sessions/postv2session
Pour optimiser le paiement et augmenter les conversions, incluez autant d'informations optionnelles sur l'utilisateur que possible.
Lorsque vous soumettez une commande avec une session, Sezzle gère l'ensemble du processus de paiement de manière transparente. Si votre système nécessite que les utilisateurs confirment leur commande sur votre site après l'approbation de Sezzle, définissez le paramètre`intent`à`AUTH`dans la demande de session. Dans ce flux, Sezzle retient la transaction jusqu'à ce que vous soumettiez une demande de capture, qui peut couvrir tout ou partie du montant de la commande. Soumettez la demande de capture avant l'expiration de l'autorisation - généralement 30 minutes, bien que vous puissiez prolonger ce délai jusqu'à 7 jours dans votre[Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/ecommerce).
En tokenisant un client, vous pouvez lui offrir l'option d'autoriser de futures transactions en son nom, vous permettant de préapprouver et de créer des commandes sans effort.
# null
Source: https://docs.sezzle.com/fr/docs/api/core/sessions/virtual/carddatabytoken
**Règles de sécurité**Les données ne sont disponibles que pendant 24 heures et nécessitent un jeton d'autorisation. Une fois accédé, le jeton est supprimé, ce qui ne peut être annulé.
# null
Source: https://docs.sezzle.com/fr/docs/api/core/sessions/virtual/postv2sessioncard
Vous pouvez utiliser ce point de terminaison pour créer une session de carte virtuelle. La réponse inclura un uuid de session et l'URL du tableau de bord client Sezzle à héberger dans un iframe ou une fenêtre contextuelle.
Ce point de terminaison doit être utilisé avec notre offre de carte virtuelle. Il n'est pas destiné au flux d'intégration directe.
# null
Source: https://docs.sezzle.com/fr/docs/api/core/sessions/virtual/setorderid
# null
Source: https://docs.sezzle.com/fr/docs/api/core/settlements/getv2summary
Si votre magasin accepte plusieurs devises, vous devrez demander des résumés de règlement pour chaque devise prise en charge. Si le code de devise n'est pas fourni dans la demande, la devise par défaut sera USD.
# null
Source: https://docs.sezzle.com/fr/docs/api/core/settlements/getv2summarydetail
## Résumé des paiements (lignes 1-2)
### En-têtes du résumé (ligne 1)
| En-tête de colonne | Description |
| ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| Montant total des commandes | La somme de toutes les commandes sur ce paiement. |
| Montant total des remboursements | La somme de tous les remboursements sur ce paiement. |
| Montant total des frais | La somme de tous les frais sur ce paiement. |
| Montant total des frais retournés | La somme de tous les frais retournés sur ce paiement. |
| Montant total des rétrofacturations | La somme de toutes les rétrofacturations sur ce paiement. |
| Montant total des annulations de rétrofacturation | La somme de toutes les annulations de rétrofacturation sur ce paiement. |
| Montant total des transferts d'intérêts | La somme de tous les transferts d'intérêts sur ce paiement. Si vous ne participez pas au programme d'intérêts, ce champ sera omis. |
| Montant total des corrections | La somme de toutes les corrections sur ce paiement. |
| Montant total des transferts de revenus de parrainage | La somme de tous les transferts de revenus de parrainage sur ce paiement. |
| Montant total des retraits bancaires | La somme de tous les retraits bancaires. |
| Montant total des annulations de retraits bancaires | La somme de toutes les annulations de retraits bancaires, qui reflètent un retrait bancaire ayant échoué. |
| Frais de change | Le coût des frais de change associés à ce paiement. |
| Montant net du règlement | Montant net du règlement. |
| UUID du paiement | L'UUID pour ce paiement. |
| Devise du règlement | La devise dans laquelle ce paiement a été envoyé. |
| Date du paiement | La date à laquelle ce paiement a été envoyé. |
| Statut du paiement | Le statut actuel de ce paiement. |
## Lignes de détail (lignes 3-n)
### En-têtes des lignes de détail (ligne 3)
| En-tête de colonne | Description |
| ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Type](#line-item-type) | Décrit le type d'événement (Commande, Frais, Remboursement, etc.). |
| Date de capture de la commande | La date à laquelle la commande a été capturée. Ce champ est vide si la commande n'a pas encore été capturée. |
| Date de création de la commande | La date à laquelle la commande a été créée. |
| Date de l'événement | La date à laquelle l'événement a eu lieu. |
| UUID de la commande | L'uuid associé à la commande. |
| ID de commande client | Le numéro de commande du client. |
| ID de référence externe | L'ID de référence externe soumis avec la commande. |
| Montant de la commande | Le montant de la commande pour l'événement ORDER |
| Montant | Le montant de l'événement. |
| Devise de comptabilisation | Le code de devise du client. |
| Code de type | Un code numérique qui correspond au champ Type. |
| Code de rétrofacturation | Un code numérique qui correspond au type de rétrofacturation soumis. |
| ID de commande Sezzle | L'ID interne que Sezzle a attribué à cette commande. |
| [Type de produit](#line-item-product-type) | Décrit le type de produit marchand (Affilié, Carte-cadeau, Paiement\_standard, etc.) |
| Numéro d'identification du marchand (MID) | L'ID qui identifie le marchand et la légitimité de l'entreprise et facilite le mouvement des fonds du compte bancaire du client vers le compte bancaire du marchand. |
| Réf. d'autorisation du réseau de cartes | Un identifiant unique numérique ou alphanumérique attribué aux transactions par carte de crédit, facilitant la localisation et l'identification d'une transaction individuelle par carte de crédit. |
#### Type de ligne de détail
| Type | Description | Code de type |
| ----------------------------------- | ------------------------------------------------------------------------------ | ------------ |
| ORDER | Une commande complétée avec Sezzle. | 001 |
| REFUND | Une commande qui a été remboursée. | 002 |
| FEE | Les frais évalués par Sezzle pour une commande donnée. | 003 |
| RETURNED\_FEE | Des frais remboursés par Sezzle. | 004 |
| CHARGEBACK | Une rétrofacturation résultant d'une commande contestée. | 005 |
| CHARGEBACK\_REVERSAL | Une annulation de rétrofacturation résultant d'une commande contestée. | 006 |
| CORRECTION | Une correction manuelle à un paiement. | 007 |
| INTEREST\_TRANSFER | Un transfert du compte d'intérêts Sezzle. | 008 |
| REFERRAL\_REVENUE\_TRANSFER | Un paiement gagné grâce au programme de parrainage de marchands de Sezzle. | 009 |
| BANK\_ACCOUNT\_WITHDRAWAL | Un retrait de fonds de votre banque pour couvrir un solde négatif avec Sezzle. | 010 |
| BANK\_ACCOUNT\_WITHDRAWAL\_REVERSAL | Un BANK\_ACCOUNT\_WITHDRAWAL échoué. | 011 |
| CAPTURE | Une commande qui a été capturée. | 012 |
#### Type de produit de ligne de détail
| Type | Description |
| ------------------- | ---------------------------------------------------- |
| standard\_checkout | Paiement standard en quatre fois |
| four\_pay\_monthly | Commande en 4 paiements mensuels |
| six\_pay\_monthly | Commande en 6 paiements mensuels |
| long\_term\_lending | Produit de prêt à long terme de base sans promotions |
| virtual\_card | Commande par carte virtuelle |
# null
Source: https://docs.sezzle.com/fr/docs/api/core/webhooks/deletev2webhooks
Cette action ne peut pas être annulée, utilisez-la avec une extrême prudence
# null
Source: https://docs.sezzle.com/fr/docs/api/core/webhooks/getv2webhooks
# null
Source: https://docs.sezzle.com/fr/docs/api/core/webhooks/infov2webhooks
## Signature du Webhook
* Sécurisé avec une signature HMAC-SHA256.
* L'en-tête Sezzle-Signature contient un hachage du corps du webhook, généré à l'aide de la clé privée du marchand.
* Vérifiez toujours que la signature correspond aux données du webhook pour confirmer qu'il provient de Sezzle.
## Acceptation et Tentatives du Webhook
* Considéré comme livré lors de la réception d'une réponse HTTP 200 Status OK.
* Les réponses non-200 déclenchent des tentatives :
* Plusieurs tentatives dans la première heure.
* Quelques tentatives tout au long de la journée.
* Dernières tentatives un jour et trois jours plus tard, sur une durée totale de cinq jours.
* Si la dernière tentative échoue, l'abonnement au webhook est supprimé pour tous les événements.
* Pour recommencer à recevoir des webhooks, recréez le webhook.
* Les webhooks peuvent ne pas arriver dans l'ordre chronologique, car de nouveaux peuvent être envoyés avant les tentatives des plus anciens.
* Les webhooks réessayés utilisent la clé privée actuelle du marchand pour la signature, donc la signature peut différer de l'originale si la clé a changé.
# null
Source: https://docs.sezzle.com/fr/docs/api/core/webhooks/postv2webhooks
### Événements Webhook valides
Nous acceptons les événements Webhook suivants
| Événement | Déclencheur |
| ---------------------------------- | ------------------------------------------------------------------------------ |
| `customer.tokenized` | Un client est tokenisé |
| `order.authorized` | Une commande est autorisée par Sezzle |
| `order.captured` | Une commande est capturée par Sezzle |
| `order.refunded` | Une commande est remboursée par Sezzle |
| `dispute.merchant_input_requested` | Un litige est déposé par un acheteur et l'intervention du marchand est requise |
| `dispute.deadline_approaching` | Un litige est passé en avis final par Sezzle |
| `dispute.closed.customer_win` | L'acheteur gagne le litige et la commande est remboursée |
| `dispute.closed.merchant_win` | Le marchand gagne le litige et il est résolu en sa faveur |
| `dispute.closed.neutral` | Aucun gagnant clair n'est déterminé et le litige est résolu de manière neutre |
### Charge utile de la requête Webhook
Identifiant unique pour l'événement webhook.
Horodatage (ISO 8601) lorsque l'événement a été généré.
Type de l'événement
Options disponibles :`customer.tokenized`,`order.authorized`,`order.captured`,`order.refunded`,`dispute.merchant_input_requested`,`dispute.deadline_approaching`,`dispute.closed.customer_win`,`dispute.closed.merchant_win`,`dispute.closed.neutral`
Type de données associées à l'événement.
Options disponibles :`customer`,`order`,`dispute`
Données de charge utile spécifiques au type d'événement. Voir les options dans l'accordéon applicable ci-dessous.
#### Exemples par événement
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"token": string,
"expiration": string,
"customer": {
"uuid": string,
"created_at": string,
"expiration": string
}
}
}
```
```json
{
"uuid": "e41c32d5-687d-414f-b5c6-d089bea52e7d",
"created_at": "2025-04-12T00:11:01.749261Z",
"event": "customer.tokenized",
"data_type": "tokenize",
"data": {
"token": "ce56604a-5dfd-489a-80e9-753d0325dd46",
"expiration": "2025-04-12T00:41:01.745145Z",
"customer": {
"uuid": "e0003e6a-7234-4440-9265-61906e8b8879",
"created_at": "2025-04-12T00:11:01.745145Z",
"expiration": "2026-04-12T00:11:01.745145Z"
}
}
}
```
Le jeton de requête du marchand.
La date et l'heure d'expiration du jeton.
Les détails du client associés au jeton.
Un identifiant unique du jeton client.
La date et l'heure de création du jeton pour le client.
La date et l'heure d'expiration du jeton pour le client.
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"uuid": string,
"authorization": {
"uuid": string,
"created_at": string,
"authorization_amount": {
"amount_in_cents": integer,
"currency": string
},
"approved": boolean,
"expiration": string
}
}
}
```
```json
{
"uuid": "fdb263a1-a1dd-4feb-8749-c8a447977ebb",
"created_at": "2025-04-12T00:15:39.281826Z",
"event": "order.authorized",
"data_type": "order",
"data": {
"uuid": "f36605a0-4a96-46d1-9d01-a0b17140dc57",
"authorization": {
"uuid": "28ef487d-8398-43bb-8354-5ebdd1eb7b40",
"created_at": "2025-04-12T00:15:39.276841Z",
"authorization_amount": {
"amount_in_cents": 5000,
"currency": "USD"
},
"approved": true,
"expiration": "2025-04-12T00:45:39.276841Z"
}
}
}
```
L'identifiant unique pour la commande.
Contient les détails de la réponse d'autorisation.
L'identifiant unique pour l'autorisation.
Horodatage ISO 8601 lorsque l'autorisation a été créée.
Détails du montant et de la devise de la transaction autorisée.
Montant autorisé en centimes.
Code de devise ISO 4217 (par exemple, USD).
Indique si l'autorisation a été approuvée.
Horodatage ISO 8601 lorsque l'autorisation expirera.
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"uuid": string,
"capture": {
"uuid": string,
"created_at": string,
"amount": {
"amount_in_cents": integer,
"currency": string
}
}
}
}
```
```json
{
"uuid": "6ee025c6-8acf-48fe-a6d6-b51693d64c60",
"created_at": "2025-04-12T00:20:07.44668Z",
"event": "order.captured",
"data_type": "order",
"data": {
"uuid": "b87305a1-6be3-4877-bcf0-2b5b7dfaeaf0",
"capture": {
"uuid": "b69b1ba8-e977-4f26-9253-06f14d941696",
"created_at": "2025-04-12T00:20:07.438365Z",
"amount": {
"amount_in_cents": 3000,
"currency": "USD"
}
}
}
}
```
L'identifiant unique pour la commande.
Contient les détails de la transaction de capture.
L'identifiant unique pour la capture.
Horodatage ISO 8601 lorsque la capture a été créée.
Détails du montant et de la devise de la capture.
Montant capturé en centimes.
Code de devise ISO 4217 (par exemple, USD).
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"uuid": string,
"refund": {
"uuid": string,
"created_at": string,
"amount": {
"amount_in_cents": integer,
"currency": string
}
}
}
}
```
```json
{
"uuid": "ed89f046-f55e-4fdd-9f65-ec3d8e961f99",
"created_at": "2025-04-12T00:24:39.809499Z",
"event": "order.refunded",
"data_type": "order",
"data": {
"uuid": "b69f882d-06c3-4f2e-b6e3-ce7a6c46e455",
"refund": {
"uuid": "479e9d25-d0a5-49df-a2d3-6ca1d75b8c57",
"created_at": "2025-04-12T00:24:39.805651Z",
"amount": {
"amount_in_cents": 500,
"currency": "USD"
}
}
}
}
```
L'identifiant unique pour la commande.
Contient les détails de la transaction de remboursement.
L'identifiant unique pour le remboursement.
Horodatage ISO 8601 lorsque le remboursement a été créé.
Détails du montant et de la devise du remboursement.
Montant remboursé en centimes.
Code de devise ISO 4217 (par exemple, USD).
Ce qui suit s'applique aux webhooks suivants :
* `dispute.merchant_input_requested`
* `dispute.deadline_approaching`
* `dispute.closed.customer_win`
* `dispute.closed.merchant_win`
* `dispute.closed.neutral`
```json
{
"uuid": string,
"created_at": string,
"event": string,
"data_type": string,
"data": {
"customer_name": string,
"order_uuid": string,
"order_reference_id": string,
"order_date": string,
"dispute_type": string,
"dispute_due_date": string,
"dispute_id": integer,
"dispute_amount_in_cents": integer,
"dispute_currency": string,
"dispute_status": string
}
}
```
```json
{
"uuid": "79f1e9cd-f1ef-42fa-b7b4-2ed8d9e9fae8",
"created_at": "2025-04-11T17:22:22.717757Z",
"event": "dispute.merchant_input_requested",
"data_type": "dispute",
"data": {
"customer_name": "John Doe",
"order_uuid": "e17280f3-d575-4bc2-99ff-ff881df7b137",
"order_reference_id": "order-reference-id-123",
"order_date": "2024-08-20",
"dispute_type": "No Product Or Service",
"dispute_due_date": "2025-04-08",
"dispute_id": 132,
"dispute_amount_in_cents": 2500,
"dispute_currency": "USD",
"dispute_status": "Closed All Win"
}
}
```
Le nom du client qui a déposé le litige.
L'identifiant unique pour la commande contestée.
L'ID de référence de la commande
La date ISO 8601 (AAAA-MM-JJ) à laquelle la commande a été passée.
La catégorie ou la raison du litige (par exemple, "Pas de produit ou service").
La date limite (date ISO 8601) pour la réponse du marchand ou l'action sur le litige.
L'ID unique pour le litige
Le prix du litige en centimes
Code de devise ISO 4217 (par exemple, USD).
Le statut du litige
Options disponibles :`Awaiting Merchant Response`,`Merchant Final Notice`,`Closed Merchant Loss`,`Closed Customer Loss`,`Closed All Win`
# null
Source: https://docs.sezzle.com/fr/docs/api/core/webhooks/postv2webhooktest
### Événements Webhook Valides
Nous acceptons les événements Webhook suivants
| Événement | Déclencheur |
| :--------------------------------- | :----------------------------------------------------------------------------- |
| `customer.tokenized` | Un client est tokenisé |
| `order.authorized` | Une commande est autorisée par Sezzle |
| `order.captured` | Une commande est capturée par Sezzle |
| `order.refunded` | Une commande est remboursée par Sezzle |
| `dispute.merchant_input_requested` | Un litige est déposé par un acheteur et l'intervention du marchand est requise |
| `dispute.deadline_approaching` | Un litige est passé en avis final par Sezzle |
| `dispute.closed.customer_win` | L'acheteur gagne le litige et la commande est remboursée |
| `dispute.closed.merchant_win` | Le marchand gagne le litige et il est résolu en sa faveur |
| `dispute.closed.neutral` | Aucun gagnant clair n'est déterminé et le litige est résolu de manière neutre |
# null
Source: https://docs.sezzle.com/fr/docs/api/environments
Avant de passer en production, vous pouvez tester votre intégration avec Sezzle en utilisant l'environnement de test sandbox Sezzle, plutôt que l'environnement de production en direct.
## **Accès aux Environnements Sandbox et Production**
* Un marchand qui s'inscrit pour un compte de production Sezzle reçoit automatiquement un accès sandbox
* Les utilisateurs administrateurs par défaut du tableau de bord de production peuvent également accéder au tableau de bord sandbox
* Les marchands peuvent créer un compte sandbox autonome sans compte de production, idéal pour tester les fonctionnalités de production sans devenir un marchand Sezzle (par exemple, pendant l'intégration du système)
## Tester Votre Intégration
1. Accédez au[sandbox](https://sandbox.dashboard.sezzle.com/merchant)
2. Connectez-vous en utilisant vos identifiants du tableau de bord marchand Sezzle
3. Dans le menu à gauche, sélectionnez`Settings`>`API Keys`
4. Cliquez sur le bouton intitulé`create API key`
5. Suivez les instructions pour créer des clés API publiques et privées
* Le même identifiant peut être utilisé pour les tableaux de bord sandbox et production.
* Les clés API pour sandbox et production ne sont pas interchangeables :
* Les clés API Sandbox ne peuvent pas être utilisées dans le tableau de bord de production.
* Les clés API de production ne peuvent pas être utilisées dans le sandbox.
* L'URL de la passerelle sandbox est [https://sandbox.gateway.sezzle.com](https://sandbox.gateway.sezzle.com).
6. Commencez un paiement sur le site web de votre magasin
7. Sélectionnez `Sezzle` comme méthode de paiement
8. Complétez le paiement Sezzle en utilisant les [données de test](/fr/docs/api/test-cards)
9. Vérifiez que la commande est passée
Référez-vous à la [section Configuration de Postman](./postman-setup.mdx) pour savoir comment créer des commandes de manière programmatique et plus en utilisant [Sezzle Core API](/docs/api/core).
# null
Source: https://docs.sezzle.com/fr/docs/api/errors
Les points de terminaison renverront un tableau d'objets d'erreur standardisés en cas d'échec.
Nous nous efforçons de maintenir ces erreurs aussi cohérentes que possible et annoncerons à l'avance tout changement si nécessaire.
## Réponse d'erreur
```json
[
{
"code": string,
"location": string,
"message": string,
"debug_uuid": string
}
]
```
```json
[
{
"code": "invalid",
"location": "order.amount.amount_in_cents",
"message": "Order amount must be greater than $35",
"debug_uuid": "919f40d0-874b-4d98-810d-ed2246a8ad77"
}
]
```
Code d'erreur
Où l'erreur s'est produite
Message décrivant pourquoi l'erreur s'est produite
UUID identifiant l'erreur
# null
Source: https://docs.sezzle.com/fr/docs/api/intro
* Sezzle prend en charge les transactions autorisées individuellement pour les achats uniques, la dernière version permettant la tokenisation des clients pour les transactions futures.
* Les options d'intégration comprennent :
* Intégration directe de l'API
* SDK JavaScript léger
* Intégrations avec des plateformes e-commerce populaires
* [Contactez l'équipe Sezzle](https://merchant-help.sezzle.com/hc/en-us/requests/new) pour les questions liées à l'API.
* Un compte Sezzle approuvé est nécessaire pour commencer l'intégration ; [inscrivez-vous](https://dashboard.sezzle.com/merchant/signup) si vous n'en avez pas.
Supposez que toutes les méthodes API nécessitent un [jeton bearer d'autorisation](./core/authentication/postauthentication#authenticated-call-http-header).
## Démarrage rapide de l'intégration directe
1. Utilisez les clés API pour obtenir un [jeton d'authentification](./core/authentication/postauthentication)
2. [Créez une session](./core/sessions/postv2session) avec un [objet de commande](./core/sessions/postv2session#body-order)
3. Redirigez l'utilisateur vers l'URL de paiement Sezzle
4. L'utilisateur termine le paiement Sezzle
5. Sezzle redirige l'utilisateur vers [l'URL de finalisation du marchand](./core/sessions/postv2session#body-complete-url)
6. Gérez la commande avec [l'API de commande](./core/orders/getv2order)
## Spécification Open API
* La [Spécification OpenAPI (OAS)](https://swagger.io/specification/) offre une interface standard et indépendante du langage pour les API RESTful, permettant aux humains et aux machines de comprendre les capacités du service sans code source, documentation ou analyse du trafic réseau.
* Accédez à la [Spécification OpenAPI v2 de Sezzle](https://gateway.sezzle.com/v2api.yaml) pour les détails d'intégration.
* Importez la Spécification OpenAPI v2 de Sezzle dans [l'éditeur Swagger](https://editor.swagger.io/?url=https://gateway.sezzle.com/v2api.yaml) pour générer un client Sezzle dans plusieurs langages de programmation.
* Pour les langages non pris en charge par Swagger, utilisez [OpenAPI Generator](https://openapi-generator.tech/) comme outil alternatif.
# null
Source: https://docs.sezzle.com/fr/docs/api/postman-setup
L'équipe Sezzle a préparé une collection Postman publique pour que les marchands puissent rapidement créer des clients (utilisateurs Sezzle), des sessions et des commandes pour les tests sandbox.
### Téléchargez et installez Postman
1. Allez sur [postman.com/downloads](https://www.postman.com/downloads)
2. Cliquez sur `Download the App`
3. Lorsque le téléchargement du fichier d'installation est terminé, cliquez sur le fichier pour installer l'application
4. Suivez les instructions d'installation à l'écran
### Ajoutez la collection Sezzle Gateway
Une fois l'installation terminée, suivez ces étapes pour ajouter la collection Sezzle Gateway à Postman.
1. Cliquez sur `Run in Postman` ci-dessous pour exécuter la collection
2. Dans la page Web qui s'ouvre, sélectionnez votre système d'exploitation
3. Cliquez sur `Open Postman` si vous y êtes invité
4. Dans Postman, la collection Sezzle Gateway est maintenant affichée dans l'onglet Collections
### Modifiez les variables de la collection
Ensuite, copiez vos identifiants du Tableau de bord Sandbox dans les variables de la collection Sezzle Gateway dans Postman. Ce sont des variables d'identification qui s'appliqueront à l'ensemble de la collection.
1. Dans Postman, sélectionnez Sezzle Gateway pour ouvrir l'onglet de la collection
2. Dans l'onglet de la collection, cliquez sur Variables. Cet onglet stockera vos identifiants qui s'appliquent à l'ensemble de la collection
3. Pour accéder à vos identifiants, connectez-vous au [Tableau de bord Sandbox](https://sandbox.dashboard.sezzle.com/merchant/)
4. Allez à `Settings` > `API Keys` - vos identifiants sandbox sont [ici](https://sandbox.dashboard.sezzle.com/merchant/settings/apikeys)
5. Dans Postman, collez vos identifiants dans `INITIAL VALUE` et `CURRENT VALUE`
* Faites cela pour `public_key` et `private_key`
# null
Source: https://docs.sezzle.com/fr/docs/api/test-cards
Les données de test sont importantes à utiliser dans notre environnement Sandbox car elles offrent un moyen d'utiliser des réponses forcées fiables.
## Téléphone et Informations Personnelles
* Utilisez n'importe quel numéro de téléphone valide aux États-Unis ou au Canada, réel ou fictif
* L'OTP attendu est`123123`
* Les informations personnelles n'ont pas besoin d'être réelles
## Cartes de Crédit de Test
| Marque | Numéro | CVC | Expiration |
| ---------- | ---------------- | -------------------------- | ---------------------------- |
| Visa | 4242424242424242 | N'importe quels 3 chiffres | N'importe quelle date future |
| Mastercard | 5555555555554444 | N'importe quels 3 chiffres | N'importe quelle date future |
| Amex | 371449635398431 | N'importe quels 4 chiffres | N'importe quelle date future |
| Amex | 378282246310005 | N'importe quels 4 chiffres | N'importe quelle date future |
| Discover | 6011111111111117 | N'importe quels 3 chiffres | N'importe quelle date future |
## Test de Paiement
* Utilisez vos[sandbox API keys](https://sandbox.dashboard.sezzle.com/merchant/settings/apikeys)lors des tests dans un environnement de test
* Utilisez vos[production API keys](https://dashboard.sezzle.com/merchant/settings/apikeys)lors des tests dans un environnement en direct
1. Sur votre site web, ajoutez un article à votre panier, puis passez à la caisse et sélectionnez`Sezzle`comme mode de paiement
2. Cliquez sur`Place Order`
Si vous êtes redirigé vers la page de paiement Sezzle, votre intégration est terminée.
3. Dans le sandbox, utilisez les données de test ci-dessus pour compléter le paiement Sezzle et vous devriez être redirigé vers votre site web
En production,**SOYEZ PRUDENT**lors de la finalisation du paiement Sezzle, car vous serez facturé. Vous pouvez identifier l'environnement Sezzle en observant si "sandbox" est inclus dans l'URL de paiement Sezzle.
# null
Source: https://docs.sezzle.com/fr/docs/api/tokenization/customers/deletev2token
# null
Source: https://docs.sezzle.com/fr/docs/api/tokenization/customers/getv2customer
# null
Source: https://docs.sezzle.com/fr/docs/api/tokenization/customers/getv2customerlist
# null
Source: https://docs.sezzle.com/fr/docs/api/tokenization/customers/postv2customerorder
Il est extrêmement important de noter que cette API renverra un succès 200 si la demande de création d'une commande est réussie (c'est-à-dire sans erreurs) mais que le client n'a pas pu être approuvé pour la commande.
**Note:**Si vous prévoyez de tokeniser un client dans le but de créer des commandes par un client, veuillez noter que ces commandes n'incluront aucune option de financement.
# null
Source: https://docs.sezzle.com/fr/docs/api/tokenization/customers/preapprovev2token
Pour un paiement d'abonnement dû via Sezzle, le marchand peut vérifier le statut d'approbation de la commande un jour ou deux à l'avance. Si la commande n'est pas approuvée, le marchand peut contacter le client pour mettre à jour son compte Sezzle avant la date de paiement, aidant ainsi à prévenir un paiement échoué.
# null
Source: https://docs.sezzle.com/fr/docs/api/tokenization/intro
La tokenisation des clients permet aux marchands de stocker Sezzle comme moyen de paiement pour les commandes futures sans interaction du client, idéal pour les abonnements comme les frais semestriels.
Toutes les commandes tokenisées seront traitées comme Paiement Intégral.
L'URL d'approbation a été dépréciée en avril 2025. Désormais, la seule façon pour les clients de vous autoriser à traiter les transactions futures sur les commandes tokenisées est de sélectionner cette option lors du processus de paiement initial.
Pour obtenir cette autorisation :
1. Initiez et tokenisez la commande en une seule session
2. Redirigez le client vers l'URL de paiement
Pour des instructions détaillées, consultez le Processus de Tokenisation ci-dessous.
## Processus de Tokenisation

1. Tokeniser le Client via le Paiement
* Le marchand appelle `/v2/session` avec `tokenize: true`, en incluant éventuellement les détails du client pour accélérer l'inscription des nouveaux utilisateurs Sezzle.
* Sezzle renvoie un jeton de session `tokenize`.
2. Le Marchand Redirige l'Utilisateur vers l'URL de Paiement
* Le client voit l'option permettant au marchand de traiter les paiements depuis son compte Sezzle pour les transactions futures.
* Le client peut décider d'accorder cette autorisation avant de finaliser son paiement.
La seule façon pour les clients de vous autoriser à traiter les transactions futures sur les commandes tokenisées est de sélectionner cette option lors du processus de paiement initial.

* Si accepté, Sezzle redirige vers l'URL de fin de session du marchand, en ajoutant un paramètre de requête `customer-uuid`.
* Alternativement, le marchand peut appeler `/v2/token` avec le jeton de tokenisation de session pour récupérer l'UUID.
3. Facturer le Client
* Le marchand utilise le `customer-uuid` pour créer des commandes via `/v2/customer/{customer_uuid}/order`.
* Si l'autorisation est approuvée, le marchand peut gérer la commande (libérer, capturer ou rembourser) en utilisant les points de terminaison `/v2/order`.
## Notes
* La tokenisation est optionnelle, recommandée uniquement pour facturer via Sezzle en dehors des paiements standard.
* Les commandes créées via l'UUID du client sont traitées de la même manière que celles d'un paiement Sezzle standard.
## Clients
Utilisez les points de terminaison clients pour :
* [Supprimer](/fr/docs/api/tokenization/customers/deletev2token) un client
* [Obtenir](/fr/docs/api/tokenization/customers/getv2customer) les détails d'un client existant
* [Obtenir](/fr/docs/api/tokenization/customers/getv2customerlist) une liste de clients
* [Créer](/fr/docs/api/tokenization/customers/postv2customerorder) une commande pour un client
* [Préapprouver](/fr/docs/api/tokenization/customers/preapprovev2token) un montant pour le client
Les clients sont uniquement les utilisateurs Sezzle qui ont accepté d'être tokenisés par le marchand. Un client est unique pour un marchand. Cette API n'inclut pas tous les utilisateurs Sezzle.
# null
Source: https://docs.sezzle.com/fr/docs/api/tokenization/session/getv2sessiontoken
# null
Source: https://docs.sezzle.com/fr/docs/api/v1
Vous consultez la version 1 de l'API Sezzle. Consultez la [version actuelle](/)!
* L'API Sezzle v1 est conçue pour les marchands souhaitant accepter Sezzle comme option de paiement.
* Le [Flux d'intégration](#integration-flow) de Sezzle décrit le processus d'interaction de paiement de l'utilisateur.
* Sezzle prend en charge les transactions autorisées individuellement pour les achats uniques de biens ou de services.
* Les noms de champs ou d'en-têtes en gras avec un astérisque (par exemple, **this\_is\_required**\*) sont obligatoires, tandis que les autres (par exemple, this\_is\_optional) ne le sont pas.
* Un compte Sezzle approuvé est nécessaire pour commencer l'intégration ; visitez la [page d'inscription](https://dashboard.sezzle.com/merchant/signup) pour en créer un si nécessaire.
## Tests
* Pendant que vous travaillez sur l'intégration, vous devriez la tester avant de la mettre en production.
* Veuillez utiliser cette section pour obtenir des informations sur les tests.
### Sandbox
**Point de terminaison API** `https://sandbox.gateway.sezzle.com/v1`\
**Tableau de bord Sandbox** `https://sandbox.dashboard.sezzle.com/merchant`
Les identifiants pour se connecter au tableau de bord sandbox sont ceux que vous utilisez pour vous connecter au tableau de bord marchand Sezzle. Vous pouvez créer vos clés API de test dans le tableau de bord sandbox.
### Données de test
Vous pouvez utiliser les données de test suivantes pour tester votre intégration :
| Banque | Nom d'utilisateur | Mot de passe |
| ----------- | ----------------- | ------------ |
| `Test Bank` | `demo` | `go` |
| Numéro de carte | CVV/CVC | Date d'expiration | Nom | Adresse |
| ------------------ | ----------------- | ----------------- | ----- | ------- |
| `4242424242424242` | `any (3 numbers)` | `any` | `any` | `any` |
### Téléphone et autres informations
* Veuillez utiliser n'importe quel numéro de téléphone valide
* Le `OTP` attendu est `123123`
* Les informations personnelles n'ont pas besoin d'être réelles
## Spécification Open API
* La [Spécification OpenAPI (OAS)](https://swagger.io/specification/) offre une interface standard et indépendante du langage pour les API RESTful, permettant aux humains et aux machines de comprendre les capacités du service sans analyse du code source, de la documentation ou du trafic réseau.
* Accédez à la [Spécification OpenAPI Sezzle v2](https://gateway.sezzle.com/v2api.yaml) pour les détails d'intégration.
* Importez la Spécification OpenAPI Sezzle v2 dans l'[Éditeur Swagger](https://editor.swagger.io/?url=https://gateway.sezzle.com/v2api.yaml) pour générer un client Sezzle dans plusieurs langages de programmation.
* Pour les langages non pris en charge par Swagger, utilisez [OpenAPI Generator](https://openapi-generator.tech/) comme outil alternatif.
## Flux d'intégration

### Explication du flux de paiement
1. Le marchand appelle `/v1/checkouts` pour envoyer les données du panier à Sezzle
2. Sezzle renvoie l'URL pour rediriger le consommateur vers le paiement sur la page de paiement Sezzle
3. Le marchand redirige le consommateur vers Sezzle
4. Lorsque le consommateur termine le flux de paiement Sezzle, il est redirigé vers le site web du marchand
5. Alternativement, lors de l'approbation, le consommateur est redirigé de la page de paiement Sezzle vers le site web du marchand et le marchand capture la commande en appelant `/v1/complete`
## Authentification
### Obtenir un jeton d'authentification
Pour autoriser, utilisez le format suivant :
**Corps de la requête**
```json
{
"public_key": "myPublicKey",
"private_key": "myPrivateKey"
}
```
Assurez-vous de remplacer `keys` par vos clés API de votre tableau de bord marchand.
**Corps de la réponse**
```json
{
"token": "authToken",
"expiration_date": "2017-01-01T01:30:25.388940303Z",
"merchant_uuid": "merchant1234567890"
}
```
`POST https://gateway.sezzle.com/v1/authentication`
Sezzle utilise des clés API à portée limitée pour permettre l'accès à l'API. Vous pouvez trouver/générer ces clés sur votre [tableau de bord marchand](https://dashboard.sezzle.com/merchant) une fois que vous avez été approuvé par Sezzle.
Une fois que vous avez un jeton valide, il doit être utilisé comme en-tête pour les requêtes suivantes à notre API, en utilisant le format ci-dessous.
`Authorization: Bearer authToken`
Vous devez remplacer les jetons que vous obtenez du point de terminaison d'autorisation Sezzle toutes les 120 minutes. Cependant, nous ne vous limitons pas à un seul jeton, et vous pouvez en obtenir un nouveau à tout moment.
## Configuration
### Définir votre configuration
**Corps de la requête**
```json
{
"webhook_url": "https://yourdomain.com/webhook"
}
```
Il n'y a pas de corps de réponse pour cette requête. En cas de succès, nous renvoyons un statut HTTP 200 OK.
`POST https://gateway.sezzle.com/v1/configuration`
Pour le moment, Sezzle ne permet que la configuration de l'URL vers laquelle nous envoyons nos webhooks.
| Paramètre | Type | Description |
| ------------------ | ------ | -------------------------------------------------- |
| **webhook\_url\*** | chaîne | Une URL vers laquelle nous enverrons nos webhooks. |
## Paiements
### Créer un paiement
**Corps de la requête**
````json [expandable]
{
"amount_in_cents": 12999,
"currency_code": "USD",
"order_reference_id": "Ref123456789",
"order_description": "Order #1800",
"checkout_cancel_url": "https://sezzle.com/cart",
"checkout_complete_url": "https://sezzle.com/complete",
"customer_details":
{
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@sezzle.com",
"phone": "5555045294"
},
"billing_address": {
"name": "John Doe",
"street": "123 W Lake St",
"street2": "Unit 104",
"city": "Minneapolis",
"state": "MN",
"postal_code": "55408",
"country_code": "US",
"phone_number": "5555045294"
},
"shipping_address": {
"name": "John Doe",
"street": "123 W Lake St",
"street2": "Unit 104",
"city": "Minneapolis",
"state": "MN",
"postal_code": "55408",
"country_code": "US",
"phone_number": "5555045294"
},
"requires_shipping_info": false,
"items": [
{
"name": "widget",
"sku": "sku123456",
"quantity": 1,
"price": {
"amount_in_cents": 1000,
"currency": "USD"
}
}
],
"discounts": [
{
"name": "20% off",
"amount": {
"amount_in_cents": 1000,
"currency": "USD"
}
}
],
"tax_amount": {
"amount_in_cents": 1000,
"currency": "USD"
},
"shipping_amount": {
"amount_in_cents": 1000,
"currency": "USD"
},
"metadata": {
"location_id": "123",
"store_name": "Downtown Minneapolis",
"store_manager": "Jane Doe"
}
}
### Response Body
```json
{
"checkout_url": "https://checkout.sezzle.com/?id=",
"checkout_uuid": ""
}
````
### **Requête HTTP**
`POST https://gateway.sezzle.com/v1/checkouts`
Ce point de terminaison de paiement crée un paiement dans notre système et renvoie l'URL vers laquelle vous devez rediriger l'utilisateur.
Nous vous suggérons de fournir autant d'informations facultatives sur l'utilisateur que vous avez à disposition, car cela accélérera notre processus de paiement et augmentera la conversion.
Sezzle est capable de gérer l'ensemble du processus de paiement après qu'un paiement a été fourni. Cependant, si votre flux nécessite que l'utilisateur confirme son paiement sur
votre site après avoir été approuvé par Sezzle, vous pouvez inclure le paramètre `merchant_completes` avec la demande de paiement. Dans ce flux, Sezzle ne finalisera pas la
commande à moins que vous ne fassiez une demande de [finalisation de paiement](#complete-a-checkout-optional).
### Objet de paiement
| Paramètre | Type | Description |
| ------------------------ | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `amount_in_cents*` | entier | Le montant du paiement. Doit être d'au moins `100` montant en cents 1,00 \$ |
| `currency_code*` | chaîne | Le code de devise du paiement |
| `order_reference_id*` | chaîne | Une référence à ce paiement dans vos systèmes |
| `order_description*` | chaîne | Une description visible par l'utilisateur pour ce paiement |
| `checkout_cancel_url*` | chaîne | L'URL vers laquelle nous devrions rediriger le client en cas d'annulation |
| `checkout_complete_url*` | chaîne | L'URL vers laquelle nous devrions rediriger en cas de paiement réussi |
| `checkout_expiration` | chaîne | Expiration du paiement au format date/heure ISO 8601 |
| `customer_details` | objet | Le client du paiement |
| `billing_address` | objet | L'adresse de facturation du paiement |
| `shipping_address` | objet | L'adresse de livraison du paiement |
| `requires_shipping_info` | booléen | Indicateur pour indiquer si vous souhaitez que nous collections les informations d'expédition pour ce paiement auprès du client. Si omis, la valeur par défaut sera false |
| `items` | tableau | Les articles achetés |
| `discounts` | tableau | Les remises appliquées. Doivent être incluses dans le total |
| `tax_amount` | objet | Les taxes appliquées à ce paiement. Doivent être incluses dans le total |
| `shipping_amount` | objet | Les frais d'expédition appliqués à ce paiement. Doivent être inclus dans le total |
| `merchant_completes` | booléen | Indicateur pour déterminer si ce paiement doit être complété par le marchand. Si omis, la valeur par défaut sera false |
| `metadata` | objet | Objet pour toute donnée personnalisée que vous souhaitez soumettre avec le paiement. Vous n'êtes pas limité aux paires clé-valeur montrées dans l'exemple, et vous pouvez utiliser n'importe quelles paires clé-valeur que vous voulez |
| `send_checkout_url` | objet | Un objet Notification pour envoyer l'URL de paiement au client |
| `locale` | chaîne de caractères | Localise le paiement. Les valeurs acceptées sont `en-US` (Anglais, États-Unis), `en-CA` (Anglais, Canada), et `fr-CA` (Français, Canada). Par défaut `en-US` si non fourni. |
Votre ID de référence de commande doit être un identifiant unique, et ne peut contenir que 'a-Z', '0-9', '-', et '\_'.
### Objet Détails du Client
| Paramètre | Type | Description |
| ------------ | -------------------- | --------------------------------------- |
| `first_name` | chaîne de caractères | Le prénom de l'utilisateur |
| `last_name` | chaîne de caractères | Le nom de famille de l'utilisateur |
| `email` | chaîne de caractères | L'adresse e-mail de l'utilisateur |
| `phone` | chaîne de caractères | Le numéro de téléphone de l'utilisateur |
### Objet Adresse
Ceci est utilisé à la fois pour la facturation et l'expédition.
| Paramètre | Type | Description |
| -------------- | -------------------- | ----------------------------------------------- |
| `name` | chaîne de caractères | Le nom sur l'adresse |
| `street` | chaîne de caractères | La rue et le numéro de l'adresse |
| `street2` | chaîne de caractères | L'appartement ou l'unité |
| `city` | chaîne de caractères | La ville |
| `state` | chaîne de caractères | Le code d'état à 2 caractères |
| `postal_code` | chaîne de caractères | Le code postal |
| `country_code` | chaîne de caractères | Le code pays à 2 caractères |
| `phone_number` | chaîne de caractères | Le numéro de téléphone à l'adresse de livraison |
### Objet Article
| Paramètre | Type | Description |
| ---------- | -------------------- | ------------------- |
| `name` | chaîne de caractères | Le nom de l'article |
| `sku` | chaîne de caractères | L'identifiant SKU |
| `quantity` | entier | La quantité achetée |
| `price` | objet | L'objet prix |
### Objet Montant de Taxe
| Paramètre | Type | Description |
| ------------ | ----- | ------------- |
| `tax_amount` | objet | Un objet prix |
### Objet Montant d'Expédition
| Paramètre | Type | Description |
| ----------------- | ----- | ------------- |
| `shipping_amount` | objet | Un objet prix |
### Objet Remise
| Paramètre | Type | Description |
| --------- | -------------------- | --------------------------- |
| `name` | chaîne de caractères | La description de la remise |
| `amount` | objet | Un objet prix |
### Objet Prix
| Paramètre | Type | Description |
| ----------------- | -------------------- | ------------------------------------------------------------ |
| `amount_in_cents` | entier | Le montant de l'article en centimes |
| `currency` | chaîne de caractères | Le code de devise à 3 caractères tel que défini par ISO 4217 |
### Objet Métadonnées
Utilisez l'objet métadonnées pour toute information supplémentaire que vous souhaitez joindre au paiement. Toutes les valeurs doivent être des chaînes de caractères.
| Paramètre | Type | Description |
| ----------------------- | -------------------- | --------------------------------- |
| `some_field_name` | chaîne de caractères | Champ de métadonnées personnalisé |
| `some_other_field_name` | chaîne de caractères | Champ de métadonnées personnalisé |
### Objet Notification
Un objet de notification valide contient au minimum un téléphone ou un e-mail.
| Paramètre | Type | Description |
| -------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `to_sms_phone` | chaîne de caractères | Le numéro de téléphone SMS de la notification |
| `to_email` | chaîne de caractères | L'adresse e-mail de la notification |
| `language` | chaîne de caractères | Le code de langue ISO 639 à 2 caractères de la notification. Les valeurs acceptables sont "en" et "fr". Par défaut en anglais si non fourni |
## Compléter un Paiement (optionnel)
### Réponse de succès
Renvoie le Paiement donné.
### Réponse de rejet
```json
{
"status": 409,
"id": "checkout_expired",
"message": "checkout not completed within time limit"
}
```
`POST https://gateway.sezzle.com/v1/checkouts/{order_reference_id}/complete`
* Lors de la définition de `merchant_completes` à `true` dans le flux de Création de Paiement :
* Vous devez appeler le point de terminaison Compléter le Paiement.
* Pour les paiements nécessitant des étapes supplémentaires :
* Les utilisateurs peuvent avoir besoin de retourner sur le site du marchand avant de finaliser l'achat.
* Utilisez le point de terminaison Compléter le Paiement pour finaliser le paiement avec Sezzle.
* Exigences sensibles au temps :
* Soumettez la demande de Compléter le Paiement dans les 30 minutes après que l'utilisateur soit redirigé vers le site du marchand.
* Le non-respect de cette condition entraînera l'annulation du paiement par Sezzle.
* Les paiements expirés déclenchent une réponse de rejet avec le Statut 409.
* Paramètres d'expiration du paiement :
* La période d'expiration par défaut pour les nouvelles commandes peut être prolongée jusqu'à 7 jours via le tableau de bord du marchand.
* Réponses sans erreur attendues :
* HTTP 200 : Renvoie tous les champs acceptés de la création du Paiement.
* Message de rejet : Indique que le paiement n'a pas été complété avec succès.
## Commandes
**Corps de Réponse des Détails de Commande**
```json [expandable]
{
"created_at": "2018-11-02T20:09:59Z",
"captured_at": "2018-11-02T20:18:50Z",
"capture_expiration": "2018-11-02T20:48:45Z",
"description": "Description of order",
"amount_in_cents": 20000,
"usd_amount_in_cents": 20000,
"customer_amount_in_cents": 20000,
"currency_code": "USD",
"customer_currency_code": "USD",
"reference_id": "Ref123456789",
"customer": {
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@sezzle.com",
"phone": "5555045294"
},
"shipping_address": {
"name": "John Doe",
"phone_number": "5555045294",
"street": "123 W Lake St",
"street2": "Unit 104",
"city": "Minneapolis",
"state": "MN",
"postal_code": "55408",
"country_code": "US"
},
"billing_address": {
"name": "John Doe",
"phone_number": "5555045294",
"street": "123 W Lake St",
"street2": "Unit 104",
"city": "Minneapolis",
"state": "MN",
"postal_code": "55408",
"country_code": "US"
},
"refunds": [
{
"amount": {
"amount_in_cents": 10000,
"currency": "USD"
},
"created_at": "2018-11-02T20:09:59Z",
"is_full_refund": false,
"order_reference_id": "Ref123456789",
"refund_id": "52b2O9Lv-8",
"refund_reason": "broken"
}
],
"metadata": {
"location_id": "123",
"store_name": "Downtown Minneapolis",
"store_manager": "Jane Doe"
},
"items": [
{
"name": "widget",
"sku": "sku123456",
"quantity": 1,
"price": {
"amount_in_cents": 1000,
"currency": "USD"
}
}
]
}
```
`GET https://gateway.sezzle.com/v1/orders/{order_reference_id}`
Une fois qu'une commande est créée, vous pouvez récupérer les détails de la commande en utilisant ce point de terminaison.
### Paramètre(s) de Requête Optionnel(s)
| Paramètre | Type | Valeurs | Description |
| --------------------- | -------------------- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| include-shipping-info | chaîne de caractères | true ou false | Si vos données de paiement nous ont obligé à collecter des informations d'expédition auprès du client, vous pouvez alors demander ces informations en plus des détails de la commande. |
## Remboursements de Commande
**Corps de Demande de Remboursement**
```json
{
"refund_id": "41a2O9Lv-7",
"amount": {
"amount_in_cents": 500,
"currency": "USD"
},
"refund_reason": "Item returned by user"
}
```
`POST https://gateway.sezzle.com/v1/orders/{order_reference_id}/refund`
* Sezzle prend en charge les remboursements via le Tableau de Bord du Marchand ou l'API.
* Les remboursements effectués via le tableau de bord déclenchent un [webhook](#order-webhooks) vers votre système.
* Les remboursements peuvent être partiels ou complets, basés sur le total de la commande, pas sur le montant payé par l'acheteur.
### Demande de Remboursement
| Paramètre | Type | Description |
| ---------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `amount*` | objet | Un objet prix qui définit le montant à rembourser. Le montant ne peut pas être 0, négatif ou dépasser le montant total de la commande. La devise doit être soit la devise de la commande, soit la devise de paiement du client. Ce champ est facultatif si le`is_full_refund` paramètre est vrai. |
| `refund_id` | string | UUID pour le Remboursement. Doit être unique pour un Marchand. |
| `refund_reason` | string | Une raison pour le remboursement. |
| `is_full_refund` | boolean | Remplace`amount`. Si vrai, la commande sera entièrement remboursée. Si omis, la valeur par défaut sera faux |
## Reporting
### Rapports de règlement
Ces points de terminaison vous permettent de consulter une liste des résumés de paiement ou un rapport détaillé d'un paiement individuel.
**Corps de réponse des résumés de règlement**
```json [expandable]
[
{
"uuid": "b7916fbe-f30a-4435-b411-124634287a8ca",
"payout_currency": "USD",
"payout_date": "2019-12-09T15:52:33Z",
"net_settlement_amount": 9370,
"forex_fees": 0,
"status": "Complete"
},
{
"uuid": "c51343hba-d54b-5641-e341-15235523b3at",
"payout_currency": "USD",
"payout_date": "2019-12-10T15:52:33Z",
"net_settlement_amount": 23470,
"forex_fees": 0,
"status": "Complete"
}
]
```
**Demande de résumés de règlement**
`GET https://gateway.sezzle.com/v1/settlements/summaries`
| Paramètre de requête | Description |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| `start-date*` | La date de début UTC pour le rapport. Doit être au format yyyy-mm-dd. |
| `end-date` | La date de fin UTC pour le rapport. Doit être au format yyyy-mm-dd. Si omis, la date actuelle sera utilisée par défaut. |
| `offset` | Le décalage pour le rapport. La limite est de 20. |
| `currency-code` | Le code de devise ISO-4217 sélectionné par les utilisateurs lors du paiement. Si omis, USD sera utilisé par défaut. |
**Réponse des détails du règlement**
```text [expandable]
total_order_amount,total_refund_amount,total_fee_amount,total_returned_fee_amount,total_chargeback_amount,total_chargeback_reversal_amount,total_interest_transfer_amount,total_correction_amount,total_referral_revenue_transfer_amount,total_bank_account_withdrawals,total_bank_account_withdrawal_reversals,forex_fees,net_settlement_amount,payment_uuid,settlement_currency,payout_date,payout_status
703.20,-5.00,-43.80,.30,0.00,0.00,-4.30,1.71,10.00,100.00,-100.00,0.00,693.61,a5c13qt1-4126-41d3-2fq8-9ca431f51431,USD,2019-11-02 00:05:00 +0000 UTC,Complete
type,order_capture_date,order_created_at,event_date,order_uuid,customer_order_id,external_reference_id,amount,posting_currency,type_code,chargeback_code,sezzle_order_id
ORDER,2019-11-01T19:09:50Z,2019-11-01T19:09:50Z,2019-10-22T19:09:50Z,bm99f-31vu1-kg00e-rae1g,1,12345,500.00,USD,001,,66d78e86-fd96-4266-9217-b769c102a0a0
ORDER,2019-11-01T19:09:50Z,2019-11-01T19:09:50Z,2019-10-22T19:09:50Z,va13d-474s9-3000e-nungg,13,12346,200.00,USD,001,,5e0d4886-8c3d-4d4e-901a-2046a06c1e0f
ORDER,2019-11-01T20:00:01Z,2019-11-01T00:00:01Z,2019-11-01T00:00:01Z,as41g-4v4s9-3000e-nunh0,1,12347,1.40,USD,001,,a2c1a142-96ad-48c9-93d2-1acaaee9f073
ORDER,2019-11-01T20:00:01Z,2019-11-01T20:00:01Z,2019-11-01T20:00:01Z,as62l-5ptqs-9g00e-pvk10,2,12348,1.80,USD,001,,3f62dcba-f5a4-41be-ad8f-53e938b5f310
FEE,2019-11-01T19:09:50Z,2019-11-01T19:09:50Z,2019-11-01T19:09:50Z,bm99f-31vu1-kg00e-rae1g,1,12345,-30.00,USD,003,,66d78e86-fd96-4266-9217-b769c102a0a0
FEE,2019-11-01T19:09:50Z,2019-11-01T19:09:50Z,2019-11-01T19:09:50Z,va13d-474s9-3000e-nungg,13,12346,-12.00,USD,003,,5e0d4886-8c3d-4d4e-901a-2046a06c1e0f
FEE,2019-11-01T20:00:01Z,2019-11-01T00:00:01Z,2019-11-01T20:00:01Z,as41g-4v4s9-3000e-nunh0,1,12347,-1.20,USD,003,,a2c1a142-96ad-48c9-93d2-1acaaee9f073
FEE,2019-11-01T20:00:01Z,2019-11-01T20:00:01Z,2019-11-01T20:00:01Z,as62l-5ptqs-9g00e-pvk10,2,12348,-0.60,USD,003,,3f62dcba-f5a4-41be-ad8f-53e938b5f310
REFUND,2019-10-22T19:09:50Z,2019-10-22T19:09:50Z,2019-11-01T19:09:50Z,bm5rm-vg2js-1tsky-c2dsky,8,12344,5.00,USD,002,,e4194956-de70-4958-9da4-6c05f276fdab
RETURNED_FEE,2019-10-22T19:09:50Z,2019-10-22T19:09:50Z,2019-11-01T19:09:50Z,bm5rm-vg2js-1tsky-c2dsky,7,12344,.30,USD,004,,e4194956-de70-4958-9da4-6c05f276fdab
CORRECTION,,,2019-11-01T17:00:01Z,,,,-1.29,,007,
CORRECTION,,,2019-11-01T17:00:01Z,,,,3.00,,007,
INTEREST_TRANSFER,,,2019-11-01T18:00:01Z,,,,-4.30,,008,
REFERRAL_REVENUE_TRANSFER,,,2019-11-01T15:00:01Z,,,,10.00,,009,
BANK_ACCOUNT_WITHDRAWAL,,,2019-11-02T00:05:00Z,,,,100.00,,010,
BANK_ACCOUNT_WITHDRAWAL_REVERSAL,,,2019-11-02T00:05:00Z,,,,-100.00,,011,
```
**Demande de détails du règlement**
`GET https://gateway.sezzle.com/v1/settlements/details/{payout_uuid}`
Le`payout_uuid` est le`uuid` renvoyé par la réponse des résumés de règlement.
| Paramètre de requête | Description |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| metadata | Une liste optionnelle de clés de métadonnées séparées par des virgules. Pour ajouter une clé de métadonnées comme colonne aux éléments de ligne du rapport, incluez la clé dans cette liste. Le cas échéant, la valeur de la clé de métadonnées sera ajoutée à l'élément de ligne. Si aucun élément de ligne ne contient la clé de métadonnées, la clé ne sera pas ajoutée comme colonne. |
La réponse des détails du règlement contient deux sections. Les deux premières lignes sont un résumé du paiement. Les lignes restantes contiennent les éléments individuels qui ont contribué au paiement.
### Définitions des colonnes du résumé
| En-tête de colonne | Description |
| ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `Total order amount` | La somme de toutes les commandes sur ce paiement. |
| `Total refund amount` | La somme de tous les remboursements sur ce paiement. |
| `Total fee amount` | La somme de tous les frais sur ce paiement. |
| `Total returned fee amount` | La somme de tous les frais retournés sur ce paiement. |
| `Total chargeback amount` | La somme de tous les rejets de débit sur ce paiement. |
| `Total chargeback reversal amount` | La somme de toutes les annulations de rejets de débit sur ce paiement. |
| `Total interest transfer amount` | La somme de tous les transferts d'intérêts sur ce paiement. Si vous ne participez pas au programme d'intérêts, ce champ sera omis. |
| `Total correction amount` | La somme de toutes les corrections sur ce paiement. |
| `Total referral revenue transfer amount` | La somme de tous les transferts de revenus de parrainage sur ce paiement. |
| `Total bank account withdrawal amount` | La somme de tous les retraits de compte bancaire. |
| `Total bank account withdrawal reversal amount` | La somme de toutes les annulations de retraits de compte bancaire, qui reflètent un retrait de compte bancaire ayant échoué. |
| `Forex fees` | Le coût des frais de change associés à ce paiement. |
| `Net settlement amount` | Montant net du règlement. |
| `Payment uuid` | L'UUID pour ce paiement. |
| `Settlement currency` | La devise dans laquelle ce paiement a été envoyé. |
| `Payout date` | La date à laquelle ce paiement a été envoyé. |
| `Payout status` | Le statut actuel de ce paiement. |
### Définitions des colonnes des éléments de ligne
| En-tête de colonne | Description |
| ----------------------- | ------------------------------------------------------------------------------------------------------------ |
| `Type` | Décrit le type d'événement (Commande, Frais, Remboursement, etc.). |
| `Order capture date` | La date à laquelle la commande a été capturée. Ce champ est vide si la commande n'a pas encore été capturée. |
| `Order created at` | La date à laquelle la commande a été créée. |
| `Event date` | La date à laquelle l'événement a eu lieu. |
| `Order uuid` | L'uuid associé à la commande. |
| `Customer order id` | Le numéro de commande du client. |
| `External reference id` | L'ID de référence externe soumis avec la commande. |
| `Amount` | Le montant de l'événement. |
| `Posting currency` | Le code de devise du client. |
| `Type code` | Un code numérique qui correspond au champ Type. |
| `Chargeback code` | Un code numérique qui correspond au type de rejet de débit soumis. |
| `Sezzle order ID` | L'ID interne que Sezzle a attribué à cette commande. |
### Définitions des types d'événements des éléments de ligne
| Type | Description | Code de type |
| ---------------------------------- | ------------------------------------------------------------------------------ | ------------ |
| `ORDER` | Une commande terminée avec Sezzle. | 001 |
| `REFUND` | Une commande qui a été remboursée. | 002 |
| `FEE` | Les frais évalués par Sezzle pour une commande donnée. | 003 |
| `RETURNED_FEE` | Des frais remboursés par Sezzle. | 004 |
| `CHARGEBACK` | Un rejet de débit résultant d'une commande contestée. | 005 |
| `CHARGEBACK_REVERSAL` | Une annulation d'un rejet de débit résultant d'une commande contestée. | 006 |
| `CORRECTION` | Une correction manuelle d'un paiement. | 007 |
| `INTEREST_TRANSFER` | Un transfert du compte d'intérêts Sezzle. | 008 |
| `REFERRAL_REVENUE_TRANSFER` | Un paiement gagné grâce au programme de parrainage de marchands de Sezzle. | 009 |
| `BANK_ACCOUNT_WITHDRAWAL` | Un retrait de fonds de votre banque pour couvrir un solde négatif avec Sezzle. | 010 |
| `BANK_ACCOUNT_WITHDRAWAL_REVERSAL` | Un BANK\_ACCOUNT\_WITHDRAWAL échoué. | 011 |
## Rapports de compte d'intérêts
* Sezzle propose aux marchands un programme de compte d'intérêts optionnel.
* Les marchands inscrits peuvent accéder aux points de terminaison pour :
* Vérifier le solde actuel
* Consulter l'activité sur le compte d'intérêts
* L'accumulation quotidienne d'intérêts est calculée avec précision, en suivant les fractions de cents, même pour les soldes faibles.
**Corps de réponse du solde du compte d'intérêts**
```json
{
"interest_balance": 5183.4624
}
```
### Demande de solde du compte d'intérêts
`GET https://gateway.sezzle.com/v1/interest/balance`
| Paramètre de requête | Description |
| -------------------- | -------------------------------------------------------------------------------------- |
| currency-code | Le code de devise ISO-4217 du compte d'intérêts. Si omis, USD sera utilisé par défaut. |
**Corps de réponse de l'activité du compte d'intérêts**
```text
type,event_date,interest_account_change_amount,interest_account_balance_after_change
INTEREST_PAYOUT,2019-12-21T19:10:00Z,122.8718,5101.4676
INTEREST_WITHDRAWAL,2019-12-21T19:20:00Z,-26.1000,5075.3676
INTEREST_ACCRUAL,2019-12-21T19:15:00Z,1.0702,5182.3922
INTEREST_ACCRUAL,2019-12-22T19:15:00Z,1.0702,5183.4624
```
### Demande d'activité du compte d'intérêts
`GET https://gateway.sezzle.com/v1/interest/activity`
| Paramètre de requête | Description |
| -------------------- | ------------------------------------------------------------------------------------------------------------------- |
| `start-date*` | La date de début pour le rapport. Doit être au format yyyy-mm-dd. |
| `end-date` | La date de fin pour le rapport. Doit être au format yyyy-mm-dd. Si omis, la date actuelle sera utilisée par défaut. |
| `offset` | Le décalage pour le rapport. |
| `currency-code` | Le code de devise ISO-4217 du compte d'intérêts. Si omis, USD sera utilisé par défaut. |
## Webhooks
### Webhooks de commande
```json [expandable]
{
"time": "2017-10-19T00:33:10.548372055Z",
"uuid": "02c5a2a0-8394-4b45-80b3-52d40c494322",
"type": "order_update",
"event": "order_complete",
"object_uuid": "Ref123456789",
"refund_id": "szl-a0293Pn-3948-80b3-ao34JAia39zQ",
"refund_amount": {
"amount_in_cents": 500,
"currency": "USD"
}
}
```
* Sezzle gère la plupart du processus de paiement du consommateur sur ses pages, en utilisant des webhooks pour notifier votre système à propos de :
* Mises à jour du paiement
* Achèvements
* Remboursements
* Les soumissions de webhook attendent une réponse dans la plage 200.
### Objet Webhook de commande
| Paramètre | Type | Description |
| --------------- | ---------------- | --------------------------------------------------------------------------------- |
| `time` | string | L'heure (UTC) à laquelle le Webhook a été généré. |
| `uuid` | string | Un identifiant unique pour le webhook. |
| `type` | string | La catégorie de haut niveau. Par exemple,`order_update` |
| `event` | string | L'action spécifique. Par exemple,`order_complete` |
| `object_uuid` | string | L'ID pour le Checkout/Commande. |
| `refund_id` | string`optional` | ID unique pour un remboursement. Inclus si l'événement webhook est order\_refund. |
| `refund_amount` | object`optional` | Objet Prix. Inclus si l'événement webhook est order\_refund. |
Pour les webhooks de mise à jour de commande, le`object_uuid`retourné est l'ID de référence fourni lors de la création du checkout par le marchand
### Événements/Types de mise à jour de commande
| Type | Événement | Description |
| -------------- | --------------- | ---------------------------------------------------------------------- |
| `order_update` | order\_complete | Le checkout a été complété avec succès |
| `order_update` | order\_refund | La commande a été remboursée depuis le tableau de bord marchand Sezzle |
## Erreurs
**Corps d'erreur de réponse**
```json
{
"status": 400,
"id": "error_id",
"message": "Descriptive message"
}
```
* Sezzle renvoie un objet d'erreur API standard sauf indication contraire dans la documentation.
* Les erreurs sont maintenues cohérentes, avec un préavis pour tout changement requis.
### Objet d'erreur
| Paramètre | Type | Description |
| --------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `Status` | int | Correspond au code de statut HTTP de la réponse |
| `ID` | string | Un identifiant programmatique pour l'erreur. Ceux-ci changent rarement (voire jamais). |
| `Message` | string | Une chaîne conviviale pour l'homme. Celles-ci peuvent changer et sont destinées à aider au débogage plutôt qu'à la logique du programme. |
## SDK Javascript
Le SDK Javascript est documenté dans la dernière[API v2 documentation](/#javascript-sdk). Il est pris en charge pour les utilisateurs de l'API v1 utilisant le même script de page chargeable.
Lors de l'utilisation du SDK Javascript avec v1, utilisez apiVersion: "v1" dans le constructeur Checkout.
### Créer un Checkout
```javascript
checkout.startCheckout({
checkout_payload: {
"amount_in_cents": 12999,
"currency_code": "USD",
"order_reference_id": "Ref123456789",
"order_description": "Order #1800",
}
});
```
* Utilisation du SDK Javascript avec v1 :
* Créez un checkout avec l'objet Checkout.
* Complétez le checkout en utilisant le point de terminaison Compléter un Checkout.
* Le point de terminaison v1 :
* Capture le montant total de la commande.
* Ne nécessite pas de corps de requête.
* N'utilisez pas l'objet payload montré dans l'exemple de capture pour v1.
### Compléter un Checkout
```javascript
checkout.capturePayment("Ref123456789");
```
## SDK Widget
* Le SDK Widget charge les widgets de vente Sezzle sur les pages web.
* Les widgets nécessitent qu'une configuration soit fournie avant le chargement du script, sinon ils ne s'afficheront pas.
* Le dépôt du projet est disponible sur[https://github.com/sezzle/sezzle-js](https://github.com/sezzle/sezzle-js).
* Référez-vous à la documentation la plus récente pour les détails de configuration des widgets.
# null
Source: https://docs.sezzle.com/fr/docs/guides/about-sezzle
Inclure une page dédiée à Sezzle sur votre site web aide les clients à comprendre comment fonctionne Sezzle et met en évidence les avantages de l'utiliser comme option de paiement. Nous fournissons un modèle HTML prêt à l'emploi pour simplifier le processus. Pour commencer :
1. Sélectionnez la plateforme de votre site web
2. Copiez le code de la section "Extraits de code" et intégrez-le dans votre site pour créer la page
Pour voir un exemple de l'apparence de la page, cliquez [ici](https://sezzle-test.myshopify.com/pages/how-sezzle-works).
## Processus Shopify
Pour configurer la page sur Shopify, suivez les étapes ci-dessous.
1. Connectez-vous à votre boutique Shopify
2. Naviguez vers `Online Store` > `Themes`
3. Sur le thème que vous souhaitez modifier, sélectionnez `Actions` puis `Edit Code`
4. Sous le dossier `Templates`, cliquez sur `Add New Template`, sélectionnez le modèle pour `Page`, type de modèle `liquid`, et nommez la page `Sezzle`, puis cliquez sur `Create Template`
5. Sélectionnez le thème qui convient le mieux à votre boutique parmi les onglets listés
6. Copiez le code et collez-le sous `{{page.content}}` sur la page Shopify
7. Enregistrer
8. Naviguez vers `Pages`
9. Ajoutez une nouvelle page et donnez-lui un titre - nous recommandons quelque chose comme `How Sezzle Works` ou `How to use Sezzle`
10. Sous `Theme Template` (en bas à droite), sélectionnez `sezzle`
11. Enregistrez et visualisez la page
## Ajoutez la page à votre navigation
1. Allez dans `Online Store` > `Navigation`
2. Sélectionnez le menu où vous souhaitez que le lien Sezzle apparaisse (ex : Menu principal)
3. Cliquez sur `Add menu item`
4. Entrez le texte que vous souhaitez voir apparaître (ex : Comment fonctionne Sezzle)
5. Cliquez sur la deuxième case, sélectionnez `Pages` puis la page que vous venez de créer
6. Cliquez sur `Add`
7. Cliquez sur `Save Menu`
## Autres plateformes
Pour configurer la page sur toute autre plateforme, veuillez travailler avec votre développeur web et/ou suivre les étapes ci-dessous.
1. Créez une nouvelle page dans votre thème
2. Copiez et collez le code dans la page de votre site web
3. Cliquez sur enregistrer et/ou publier !
## Extrait de code
Insérez le code suivant dans votre fichier HTML :
```html [expandable]
```
```html [expandable]
```
Votre ID marchand qui est au format : `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` [Trouvez-le ici](https://dashboard.sezzle.com/merchant/settings/business).
Affiche le design de la page en mode sombre ou clair
Options disponibles : `dark`, `light`
Contrôle la traduction du contenu de la page
Options disponibles : `en`, `fr`
# null
Source: https://docs.sezzle.com/fr/docs/guides/ai-assistance
Toutes nos pages de documentation sont hébergées dans une variété de formats markdown pour vous faciliter l'alimentation de nos documents dans des modèles de langage large (LLMs) pour une récupération d'informations spécifiques.
## Formats pris en charge
Nous prenons en charge les normes de l'industrie telles que[/llms.txt](https://llmstxt.org)ainsi que des formats markdown supplémentaires.
* Un fichier markdown d'un index structuré de nos documents est hébergé à[https://docs.sezzle.com/llms.txt](https://docs.sezzle.com/llms.txt).
Un fichier markdown du contenu de nos documents est hébergé à[https://docs.sezzle.com/llms-full.txt](https://docs.sezzle.com/llms-full.txt).
# null
Source: https://docs.sezzle.com/fr/docs/guides/auth-and-capture
Les marchands intégrant Sezzle à leur plateforme de commerce électronique peuvent choisir entre deux paramètres de paiement :`Authorize Only`ou`Authorize and Capture`. Cette page fournit une explication détaillée des différences entre ces options pour vous aider à sélectionner le meilleur paramètre pour vos besoins.
### **Autorisation Seulement**
* Le paiement sera uniquement autorisé automatiquement, pas capturé, après un paiement réussi
* Dans la section Historique des détails de la commande, le champ`Captured`affiche 0, et`Not Captured`affiche le montant de la commande
* Si`Authorize Only`est défini, vous devez capturer le montant de la commande manuellement avant l'expiration de l'autorisation afin de marquer le paiement comme payé
### **Autorisation et Capture**
* Le paiement est capturé automatiquement après un paiement réussi.
* Dans la`History`section des détails de la commande, le champ`Captured`affiche le montant de la commande, et`Not Captured`affiche 0
### Notes
* L'expiration par défaut de l'autorisation est de 30 minutes pour tous les marchands sauf Shopify, dont la valeur par défaut est de 7 jours
* Vous pouvez prolonger cela jusqu'à un maximum de 7 jours
* Une fois l'autorisation expirée, la capture est refusée et tout montant non capturé est libéré
* Si le total de la commande n'est pas capturé avant l'expiration, la commande est supprimée
* Le paiement est considéré comme payé uniquement lorsque le montant est capturé
* Si le montant de la commande affiche`Not Captured`et la valeur`Captured`dans la section`History`du Tableau de bord du Marchand est 0, le montant de la commande n'a pas été capturé
* Si le montant reste non capturé avant l'expiration de l'autorisation, la commande sera supprimée
### Comment Modifier l'Expiration de l'Autorisation dans le Tableau de Bord du Marchand
1. Connectez-vous à votre compte Tableau de Bord du Marchand
2. Allez dans`Settings`>`Payment Captures`>`Authorization Expiration Period`et cliquez sur`update`
3. Définissez la valeur pour les jours, les heures et les minutes et cliquez sur`confirm`
# null
Source: https://docs.sezzle.com/fr/docs/guides/direct/integration
Le SDK JavaScript peut être utilisé pour une intégration simple et légère, mais il inclut également un mode en contexte qui hébergera le paiement Sezzle dans un iframe modal ou une fenêtre pop-up.
Créez des paiements et capturez des paiements avec Sezzle.
Paiement dans un iframe, une fenêtre pop-up, ou redirection vers Sezzle.
Gérez le succès, l'échec ou l'annulation du paiement avec vos commandes Sezzle.
Affichez le bouton de paiement Sezzle sur votre boutique.
## Inclure le code SDK
Incluez le script suivant dans la``section de la page.
```html
```
## Configuration du paiement
La première exigence pour commencer avec le SDK JavaScript direct est de configurer un nouvel objet Checkout.
### Options de configuration
```javascript
const checkoutSdk = new Checkout({
mode: string,
publicKey: string,
apiMode: string,
apiVersion: string,
});
```
```javascript
const checkoutSdk = new Checkout({
mode: "popup",
publicKey: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
apiMode: "sandbox",
apiVersion: "v2",
});
```
Options disponibles :`popup`,`iframe`,`redirect`
**popup**Le mode fonctionnera directement. Aucune configuration supplémentaire n'est requise pour utiliser**popup**. Sezzle recommande actuellement le mode**popup**.**iframe**Le mode ne fonctionnera pas correctement sans contacter d'abord Sezzle. Pour des raisons de sécurité, Sezzle doit activer**iframe**pour votre(vos) domaine(s). Pour l'activer, veuillez soumettre une demande avec votre UUID de marchand Sezzle et une liste des domaines à autoriser par environnement (production et sandbox). Par exemple,[*veuillez activer uat1.monsite.com, uat2.monsite.com dans sandbox et www.monsite.com, monsite.com en production*](http://www.mysite.com).
L'intégration pour**popup**et**iframe**sont identiques, à l'exception du mode. L'utilisation du mode**popup**accélérera votre développement. Une fois l'intégration terminée, si**iframe**est une exigence, contactez alors Sezzle pour activer votre(vos) domaine(s) et passez le mode à**iframe**.
Utilisé lors de la création d'un paiement ou de la capture d'un paiement. Trouvez vos clés API sur[https://dashboard.sezzle.com/merchant/settings/apikeys](https://dashboard.sezzle.com/merchant/settings/apikeys)
Environnement dans lequel le paiement doit être effectué
Options disponibles :`live`,`sandbox`
Version du SDK de paiement Sezzle
Options disponibles :`v2`
## Bouton Sezzle
### Configuration du bouton Sezzle
Créez un élément de placeholder pour que le bouton Sezzle soit rendu sur la(les) page(s).
```html
```
```html
```
Texte à afficher à l'intérieur du bouton. Utilisez`%%logo%%`dans le texte pour
afficher l'image Sezzle
Options disponibles :`square`,`semi-rounded`
Classes personnalisées à appliquer
Espace négatif entre le haut du contenu et le bord du bouton
Espace négatif entre le bas du contenu et le bord du bouton
Espace négatif entre le côté gauche du contenu et le bord du bouton
Espace négatif entre le côté droit du contenu et le bord du bouton
Largeur du logo Sezzle dans le bouton
Position du logo Sezzle depuis le haut.
Position du logo Sezzle depuis le bas.
Position du logo Sezzle depuis la gauche.
Position du logo Sezzle depuis la droite.
Espacement entre les lettres du texte du modèle.
Largeur du bouton
Hauteur du bouton.
### Rendre le bouton Sezzle
Nécessite d'avoir l'objet`checkout`créé ci-dessus pour rendre le bouton. Appelez`renderSezzleButton`en passant le`id`de l'élément placeholder défini dans la Configuration du bouton, ci-dessus.
```javascript
checkoutSdk.renderSezzleButton("sezzle-smart-button-container");
```
## Initialiser le paiement
### Gestionnaires d'événements
Le SDK nécessite les gestionnaires d'événements suivants qui peuvent être utilisés pour étendre les fonctionnalités de votre application.
```javascript
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({...});
},
onComplete: function (event) {
console.log(event.data);
},
onCancel: function () {
console.log("Checkout cancelled.");
},
onFailure: function () {
console.log("Checkout failed.");
},
});
```
```javascript [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({
checkout_payload: {
order: {
intent: "AUTH",
reference_id: "543645yg5tg5675686",
description: "sezzle-store - #12749253509255",
order_amount: {
amount_in_cents: 10000,
currency: "USD",
},
},
},
});
},
onComplete: function (event) {
console.log(event.data);
},
onCancel: function () {
console.log("Checkout cancelled.");
},
onFailure: function () {
console.log("Checkout failed.");
},
});
```
Le bouton Sezzle est cliqué par l'utilisateur.
Voir la section[Initialisation du paiement](#checkout-initialization)pour les options de charge utile.
Le paiement Sezzle est effectué avec succès. Un paiement Sezzle réussi déclenchera un événement vers le gestionnaire`onComplete`. L'événement devrait inclure un objet de données avec des données pertinentes pour le paramètre d'entrée de début de paiement.
Le paiement Sezzle est annulé. Si l'utilisateur quitte le paiement Sezzle pour une raison quelconque, le gestionnaire`onCancel`sera exécuté.
Le paiement Sezzle a échoué. S'il y a une erreur lors du chargement de la page de paiement Sezzle, le gestionnaire`onFailure`sera exécuté.
### Initialisation du paiement
```javascript
checkoutSdk.startCheckout({
checkout_payload: {
order: {
intent: string,
reference_id: string,
description: string,
order_amount: {
amount_in_cents: integer,
currency: string,
},
},
},
});
```
```javascript
checkoutSdk.startCheckout({
checkout_payload: {
order: {
intent: "AUTH",
reference_id: "543645yg5tg5675686",
description: "sezzle-store - #12749253509255",
order_amount: {
amount_in_cents: 10000,
currency: "USD",
},
},
},
});
```
La commande pour cette session
Si votre flux de paiement nécessite que l'utilisateur confirme son paiement sur votre site après avoir été approuvé par Sezzle, utilisez "AUTH" comme intention. Si vous préférez que le paiement soit capturé immédiatement, utilisez "CAPTURE".
Options disponibles :`AUTH`,`CAPTURE`
Votre ID de référence pour cette commande (doit contenir uniquement des caractères alphanumériques, des tirets (-) et des underscores (\_))
Votre description pour cette commande
Le montant total de la commande
Le montant de l'article en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
Alternativement, commencez le paiement par URL :
```javascript
checkout.startCheckout({
checkout_url: "https://checkout.sezzle.com/?id=example",
});
```
Le début du paiement doit être implémenté dans le gestionnaire de`onClick`paiement. Il existe deux méthodes pour héberger un paiement.
**Utilisez une charge utile de paiement comme détaillé dans l'Objet de Session**
* Les URLs d'annulation et de complétion ne sont pas requises pour les modes`iframe`et`popup`.
**Utilisez une URL de paiement existante**
* Le`mode`utilisé lors de la configuration du paiement SDK doit correspondre au`checkout_mode`lors de la[création d'une session](/fr/docs/api/core/sessions/postv2session).
* La fenêtre parent`origin`doit être fournie dans les urls d'annulation et de complétion lorsque le`checkout_mode`est`iframe`ou`popup`.
**Tokenisation du client**Ceci n'est pas pris en charge dans l'événement`onComplete`. Pour recevoir un UUID client, abonnez-vous à[customer.tokenized](/fr/docs/api/core/webhooks/postv2webhooks#valid-webhook-events) event.
### Paiement terminé par Payload
```javascript
function onCompleteHandler(event) {
var data = event.data || Object.create(null);
console.log("session data:", data.session_uuid, data.order_uuid);
}
checkout.init({
onComplete: onCompleteHandler,
});
```
### Paiement terminé par URL
```javascript
function onCompleteHandler(event) {
var data = event.data || Object.create(null);
console.log("checkout data:", data.checkout_uuid);
}
checkout.init({
onComplete: onCompleteHandler,
});
```
### Capturer le paiement
La capture d'une commande n'est pas nécessaire si le `CAPTURE` intent a été utilisé lors de la création du paiement.
```javascript
var payload = {
capture_amount: {
amount_in_cents: integer,
currency: string,
},
};
checkout.capturePayment(data.order_uuid, payload);
```
```javascript
var payload = {
capture_amount: {
amount_in_cents: 5000,
currency: "USD",
},
};
checkout.capturePayment(data.order_uuid, payload);
```
La méthode de capture du paiement nécessite deux paramètres, le `order_uuid` et le payload comme détaillé dans le [Capture Amount By Order Object](/fr/docs/api/core/orders/postv2capturebyorder).
Le montant à capturer sur cette commande
Le montant en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
## Plan de paiement échelonné
```javascript
const checkout = new Checkout({});
checkout.getInstallmentPlan(1000);
```
```json
{
"schedule": string,
"totalInCents": integer,
"installments": [
{
"installment": integer,
"amountInCents": integer,
"dueDate": string
}
]
}
```
```json
{
"schedule": "bi-weekly",
"totalInCents": 1000,
"installments": [
{
"installment": 1,
"amountInCents": 250,
"dueDate": "2020-10-14"
},
{
"installment": 2,
"amountInCents": 250,
"dueDate": "2020-10-28"
},
{
"installment": 3,
"amountInCents": 250,
"dueDate": "2020-11-11"
},
{
"installment": 4,
"amountInCents": 250,
"dueDate": "2020-11-25"
}
]
}
```
Fréquence de paiement pour le plan échelonné
Montant total de la commande en centimes
Répartition de chaque paiement dû
Nombre de versements dans la série
Montant du versement en centimes
Date d'échéance du versement
Cette fonction fournira les détails des versements basés sur un montant en centimes. Un [checkout](#checkout-initialization) existant peut être utilisé, ou un `checkout` sans aucune configuration peut également être utilisé pour obtenir rapidement les détails des versements.
# null
Source: https://docs.sezzle.com/fr/docs/guides/direct/introduction
## Flux de commande d'intégration directe

1. Demande de création de session de paiement
* Le serveur du marchand envoie une demande à l'API Sezzle pour créer une session de paiement pour la commande du client, incluant des détails tels que le montant de la commande, les articles et les informations du client.
2. Génération de session et d'URL de redirection
* L'API Sezzle traite la demande, crée une session liée à la commande et génère une URL de redirection pour que le client accède à l'interface utilisateur Sezzle pour le traitement du paiement.
3. Réception de l'URL de redirection de l'API Sezzle
* L'API Sezzle envoie l'URL de redirection générée au serveur du marchand, permettant au marchand de procéder à la redirection du client.
4. Redirection du client vers l'interface utilisateur Sezzle
* En utilisant l'URL de redirection, le serveur du marchand dirige le client vers l'interface utilisateur Sezzle pour compléter le processus de paiement.
5. Traitement du paiement du client dans l'interface utilisateur Sezzle
* Le client examine la commande dans l'interface utilisateur Sezzle et complète le paiement.
* Sezzle évalue l'éligibilité au financement du client (par exemple, via une vérification de crédit), approuvant ou refusant la transaction.
* En cas de refus, le client doit utiliser un autre mode de paiement.
6. Redirection du client vers le site du marchand (Optionnel)
* Après le paiement (approuvé ou refusé), Sezzle redirige le client vers le site du marchand.
* Le marchand peut afficher une page de confirmation montrant le statut de la commande (par exemple, "Commande confirmée" ou "Paiement échoué").
* Cette étape est optionnelle selon la préférence du marchand.
7. Demande de capture des fonds
* Lors de l'approbation du paiement, le serveur du marchand envoie une demande à l'API Sezzle pour capturer les fonds de la commande, soit en totalité, soit partiellement (par exemple, pour des expéditions partielles).
8. Réception du statut de la transaction de l'API Sezzle
* L'API Sezzle traite la demande de capture et renvoie le statut de la transaction au serveur du marchand.
* Le statut indique si les fonds ont été capturés avec succès ou si des problèmes sont survenus (par exemple, fonds insuffisants).
* Le marchand met à jour son système et notifie le client en conséquence.
# null
Source: https://docs.sezzle.com/fr/docs/guides/direct/manual
Le [SDK Javascript](./integration) est un excellent moyen de commencer, mais s'il n'est pas disponible pour votre implémentation, vous pouvez effectuer toutes les actions nécessaires par vous-même.
## Guide de démarrage rapide
1. Utilisez les clés API pour obtenir un [jeton](/fr/docs/api/core/authentication/postauthentication) d'authentification
2. Créez une [session](/fr/docs/api/core/sessions/postv2session) avec un objet de commande
3. Redirigez l'utilisateur vers l'URL de paiement Sezzle
4. L'utilisateur complète le paiement Sezzle
5. Sezzle redirige l'utilisateur vers l'URL de finalisation du marchand
6. Gérez la commande avec l'[API des commandes](/fr/docs/api/core/orders/getv2order)
7. Abonnez-vous à tous les [événements Webhook](/fr/docs/api/core/webhooks/postv2webhooks)
# null
Source: https://docs.sezzle.com/fr/docs/guides/express/express-checkout
Le bouton de paiement express Sezzle est un outil puissant pour les marchands utilisant des plateformes personnalisées. Intégré directement dans la page du panier, le bouton permet aux acheteurs de sélectionner Sezzle comme mode de paiement en un seul clic, en utilisant leur compte Sezzle pour une expérience de paiement fluide. Cette fonctionnalité est conçue pour réduire l'abandon du panier, augmenter le taux de conversion et améliorer la satisfaction client.
## Installation
### Inclure le code SDK
Incluez le script suivant dans la`` section de la page.
```html
```
### Configuration du paiement
#### Options de configuration
```javascript
const checkoutSdk = new ExpressCheckout({
mode: string,
publicKey: string,
apiMode: string,
apiVersion: string,
});
```
```javascript
const checkoutSdk = new ExpressCheckout({
mode: "popup",
publicKey: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
apiMode: "live",
apiVersion: "v2",
});
```
Options disponibles :`popup`,`iframe`,`redirect`
**popup** fonctionnera directement. Aucune configuration supplémentaire n'est nécessaire pour utiliser**popup**. Sezzle recommande actuellement le mode**popup**.
**iframe** ne fonctionnera pas correctement sans contacter d'abord Sezzle. Pour des raisons de sécurité, Sezzle doit activer**iframe** pour votre(vos) domaine(s). Pour l'activer, veuillez soumettre une demande avec votre UUID de marchand Sezzle et une liste des domaines à autoriser par environnement (production et sandbox). Par exemple,[*please enable uat1.mysite.com, uat2.mysite.com in sandbox and www.mysite.com, mysite.com in production*](http://www.mysite.com).
L'intégration pour**popup** et**iframe** sont identiques, à l'exception du mode. L'utilisation du mode**popup** accélérera votre développement. Une fois l'intégration terminée, si**iframe** est une exigence, contactez alors Sezzle pour activer votre(vos) domaine(s) et passez le mode à**iframe**.
Utilisé lors de la création d'un paiement ou de la capture d'un paiement. Trouvez vos clés API sur[https://dashboard.sezzle.com/merchant/settings/apikeys](https://dashboard.sezzle.com/merchant/settings/apikeys)
Environnement dans lequel le paiement doit être effectué
Options disponibles :`live`,`sandbox`
Version du SDK de paiement Sezzle
Options disponibles :`v2`
### Bouton Sezzle
#### Configuration du bouton Sezzle
Créez un élément de substitution pour que le bouton Sezzle soit rendu sur la(les) page(s).
```html
```
```html
```
Texte à afficher à l'intérieur du bouton. Utilisez`%%logo%%` dans le texte pour
afficher l'image Sezzle
Options disponibles :`square`,`semi-rounded`
Classes personnalisées à appliquer
Espace négatif entre le haut du contenu et le bord du bouton
Espace négatif entre le bas du contenu et le bord du bouton
Espace négatif entre le côté gauche du contenu et le bord du bouton
Espace négatif entre le côté droit du contenu et le bord du bouton
Largeur du logo Sezzle dans le bouton
Position du logo Sezzle depuis le haut.
Position du logo Sezzle depuis le bas.
Position du logo Sezzle depuis la gauche.
Position du logo Sezzle depuis la droite.
Espacement entre les lettres du texte du modèle.
Largeur du bouton
Hauteur du bouton.
#### Rendre le bouton Sezzle
Nécessite d'avoir l'objet de paiement créé ci-dessus pour rendre le bouton. Appelez renderSezzleButton en passant l'id de l'élément de substitution défini dans la Configuration du bouton, ci-dessus.
```javascript
await checkoutSdk.renderSezzleButton("sezzle-smart-button-container");
```
### Initialiser le paiement
#### Gestionnaires d'événements
Le SDK nécessite les gestionnaires d'événements suivants qui peuvent être utilisés pour étendre les fonctionnalités de votre application.
```javascript [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({...});
},
onComplete: function (response) {
checkoutSdk
.capturePayment(response.data.order_uuid, {...})
.then((r) => {
console.log(r);
});
},
onCancel: function () {
alert("Transaction cancelled.");
},
onFailure: function () {
alert("Transaction failed.");
},
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
"https://gateway.sezzle.com/v2/authentication",
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
public_key: string,
private_key: string,
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
`https://gateway.sezzle.com/v2/order/${order_uuid}/checkout`,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
amount_in_cents: integer,
currency_code: string,
shipping_amount_in_cents: integer,
tax_amount_in_cents: integer,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
});
```
```javascript [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({
checkout_payload: {
// "cancel_url":{
// "href": "http://localhost:44300/demo/v2checkout.html"
// },
// "complete_url":{
// "href": "http://localhost:44300/demo/v2checkout.html"
// },
is_express_checkout: true,
order: {
intent: "AUTH",
reference_id: "543645yg5tg5675686",
description: "sezzle-store - #12749253509255",
requires_shipping_info: false,
items: [
{
name: "widget",
sku: "sku123456",
quantity: 1,
price: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
discounts: [
{
name: "20% off",
amount: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
metadata: {
location_id: "123",
store_name: "Downtown Minneapolis",
store_manager: "Jane Doe",
},
shipping_amount: {
amount_in_cents: 1000,
currency: "USD",
},
tax_amount: {
amount_in_cents: 1000,
currency: "USD",
},
order_amount: {
amount_in_cents: 10000,
currency: "USD",
},
},
},
});
},
onComplete: function (response) {
alert("Completed transaction. Capture started.");
checkoutSdk
.capturePayment(response.data.order_uuid, {
capture_amount: {
amount_in_cents: 10000,
currency: "USD",
},
partial_capture: false,
})
.then((r) => {
console.log(r);
});
},
onCancel: function () {
alert("Transaction cancelled.");
},
onFailure: function () {
alert("Transaction failed.");
},
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
"https://gateway.sezzle.com/v2/authentication",
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
public_key: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
private_key:
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaWQiOjEsInNjb3BlIjoibWVyY2hhbnRhcGkiLCJleHAiOjQ2MzM3MTg3MDYsImlzcyI6IlNlenpsZSJ9.Ez4-gbBpb5iTRJ9VCVD97IrjS98v1NalZlL2fHU2KSA",
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
`https://gateway.sezzle.com/v2/order/${order_uuid}/checkout`,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
amount_in_cents: 11500,
currency_code: "USD",
shipping_amount_in_cents: 500,
tax_amount_in_cents: 1000,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
});
```
Le bouton Sezzle est cliqué par l'utilisateur.
Voir la section[Initialisation du paiement](#checkout-initialization) pour les options de charge utile.
Le paiement Sezzle est effectué avec succès. Un paiement Sezzle réussi déclenchera un événement vers le gestionnaire`onComplete`. L'événement devrait inclure un objet de données avec des données pertinentes pour le paramètre d'entrée de début de paiement.
Voir la section[capturePayment](#capture-payment) pour les options de charge utile.
Le paiement Sezzle est annulé. Si l'utilisateur quitte le paiement Sezzle pour une raison quelconque, le gestionnaire`onCancel` sera exécuté.
Le paiement Sezzle a échoué. S'il y a une erreur lors du chargement de la page de paiement Sezzle, le gestionnaire`onFailure` sera exécuté.
Requis si`is_express_checkout` est`true`. Une fois que l'acheteur a fourni l'adresse de livraison via le paiement express Sezzle, cette fonction doit renvoyer les coûts de taxe et d'expédition à Sezzle.
#### Initialisation du paiement
```javascript [expandable]
checkoutSdk.startCheckout({
checkout_payload: {
// "cancel_url":{
// "href": string
// },
// "complete_url":{
// "href": string
// },
is_express_checkout: boolean,
order: {
intent: string,
reference_id: string,
description: string,
requires_shipping_info: boolean,
items: [
{
name: string,
sku: string,
quantity: integer,
price: {
amount_in_cents: integer,
currency: string,
},
},
],
discounts: [
{
name: string,
amount: {
amount_in_cents: integer,
currency: string,
},
},
],
metadata: {
some_property: string,
some_other_property: string
},
shipping_amount: {
amount_in_cents: integer,
currency: string,
},
tax_amount: {
amount_in_cents: integer,
currency: string,
},
order_amount: {
amount_in_cents: integer,
currency: string,
},
},
},
});
```
```javascript
checkoutSdk.startCheckout({
checkout_payload: {
// "cancel_url":{
// "href": "http://localhost:44300/demo/v2checkout.html"
// },
// "complete_url":{
// "href": "http://localhost:44300/demo/v2checkout.html"
// },
is_express_checkout: true,
order: {
intent: "AUTH",
reference_id: "543645yg5tg5675686",
description: "sezzle-store - #12749253509255",
requires_shipping_info: false,
items: [
{
name: "widget",
sku: "sku123456",
quantity: 1,
price: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
discounts: [
{
name: "20% off",
amount: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
metadata: {
location_id: "123",
store_name: "Downtown Minneapolis",
store_manager: "Jane Doe",
},
shipping_amount: {
amount_in_cents: 1000,
currency: "USD",
},
tax_amount: {
amount_in_cents: 1000,
currency: "USD",
},
order_amount: {
amount_in_cents: 10000,
currency: "USD",
},
},
},
});
```
Les informations de requête HTTP utilisées pour rediriger le client en cas d'annulation
L'URL utilisée lors de la redirection d'un client
Les informations de requête HTTP utilisées pour rediriger le client à la fin de la session
L'URL utilisée lors de la redirection d'un client
Indique si le paiement doit suivre le protocole de paiement express. Pour cette implémentation, assurez-vous d'utiliser`true`
La commande pour cette session
Si votre flux de paiement nécessite que l'utilisateur confirme son paiement sur votre site après avoir été approuvé par Sezzle, utilisez "AUTH" comme intention. Si vous préférez que le paiement soit capturé immédiatement, utilisez "CAPTURE".
Options disponibles :`AUTH`,`CAPTURE`
Votre ID de référence pour cette commande (doit contenir uniquement des caractères alphanumériques, des tirets (-) et des traits de soulignement (\_))
Votre description pour cette commande
Indicateur pour indiquer si vous souhaitez que nous collections les informations d'expédition pour ce paiement auprès du client. Si omis, la valeur par défaut est false.
Si`is_express_checkout` est`true` et que la méthode d'expédition n'est pas*Retrait en magasin*,`requires_shipping_info` doit être`true`. Pour le retrait en magasin et le paiement standard, utilisez`false`
Les articles achetés
Le nom de l'article
L'identifiant SKU
La quantité achetée
L'objet prix
Le montant de l'article en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
Les remises appliquées à cette commande. Doivent être incluses dans le total
La description de la remise
Un objet prix
Le montant de l'article en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
Objet pour toutes les données personnalisées que vous souhaitez soumettre avec le paiement. Vous n'êtes pas limité aux paires clé-valeur montrées dans l'exemple, et vous pouvez utiliser toutes les paires clé-valeur que vous voulez
Champ de métadonnées personnalisé
Champ de métadonnées personnalisé
Les frais d'expédition appliqués à cette commande. Doivent être inclus dans le total
Le montant de l'article en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
Les taxes appliquées à cette commande. Doivent être incluses dans le total
Le montant de l'article en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
Le montant total de la commande
Le montant de l'article en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
Le démarrage du paiement doit être implémenté dans le gestionnaire de paiement`onClick`. Il existe deux méthodes pour héberger un paiement.
**Utiliser une charge utile de paiement comme détaillé dans l'Objet Session**
* Les URL d'annulation et de finalisation ne sont pas requises pour`iframe`et`popup`mode.
**Utiliser une URL de paiement existante**
* Le`mode`utilisé lors de la configuration du paiement SDK doit correspondre au`checkout_mode`lors de[la création d'une session](/fr/docs/api/core/sessions/postv2session).
* La fenêtre parent`origin`doit être fournie dans les URL d'annulation et de finalisation lorsque le`checkout_mode`est`iframe`ou`popup`.
**Tokenisation du client**Ceci n'est pas pris en charge dans l'événement`onComplete`. Pour recevoir un UUID client, abonnez-vous à l'événement[customer.tokenized](/fr/docs/api/core/webhooks/postv2webhooks#valid-webhook-events).
#### Capture du paiement
La capture d'une commande n'est pas requise si l'intention`CAPTURE`a été utilisée lors de la création du paiement.
```javascript
checkoutSdk
.capturePayment(response.data.order_uuid, {
capture_amount: {
amount_in_cents: integer,
currency: string,
},
partial_capture: boolean,
})
.then((r) => {
console.log(r);
});
```
```javascript
checkoutSdk
.capturePayment(response.data.order_uuid, {
capture_amount: {
amount_in_cents: 10000,
currency: "USD",
},
partial_capture: false,
})
.then((r) => {
console.log(r);
});
```
Le montant à capturer sur cette commande
Le montant en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
#### onCalculateAddressRelatedCosts
Pour des raisons de sécurité, l'authentification et la mise à jour du paiement doivent provenir du code back-end du marchand.
1. Obtenir le jeton d'authentification
* Appelez le point de terminaison[authentication](/fr/docs/api/core/authentication/postauthentication)pour obtenir un jeton bearer
* Vous devriez déjà avoir configuré cela dans votre back-end pour l'intégration standard
* Au lieu de pointer directement vers Sezzle comme dans l'exemple ci-dessous, vous pouvez réutiliser votre fonction existante
2. Mettre à jour la commande
* Appelez le point de terminaison de mise à jour et de paiement pour mettre à jour les montants d'expédition et de taxe
* Voir l'onglet`Options`ci-dessous pour plus de détails
```javascript [expandable]
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
yourBackendAuthenticationURL,
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
public_key: string,
private_key: string,
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
yourBackendUpdateOrderURL,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
amount_in_cents: integer,
currency_code: string,
shipping_amount_in_cents: integer,
tax_amount_in_cents: string,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
```
```javascript [expandable]
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
`http://your-backend-endpoint/authentication`,
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
public_key: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
private_key:
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaWQiOjEsInNjb3BlIjoibWVyY2hhbnRhcGkiLCJleHAiOjQ2MzM3MTg3MDYsImlzcyI6IlNlenpsZSJ9.Ez4-gbBpb5iTRJ9VCVD97IrjS98v1NalZlL2fHU2KSA",
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
`http://your-backend-endpoint/updateOrder`,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
amount_in_cents: 11500,
currency_code: "USD",
shipping_amount_in_cents: 500,
tax_amount_in_cents: 1000,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
```
Le montant total en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
Le montant d'expédition en centimes pour la commande
Le montant de taxe en centimes pour la commande
L'UUID de l'adresse pour la commande
##### Réponse
```json
{
ok: boolean,
error: {
code: string
}
}
```
```json
{
ok: false,
error: {
code: "merchant_unsupported_shipping_address"
}
}
```
Options disponibles :`merchant_unsupported_shipping_address`,`merchant_error`
`merchant_unsupported_shipping_address`indique que le marchand ne prend pas en charge l'adresse de livraison fournie.`merchant_error`est une erreur générique renvoyée par le marchand lorsque quelque chose ne va pas de leur côté.
# null
Source: https://docs.sezzle.com/fr/docs/guides/express/introduction
Installez le bouton Sezzle Express Checkout pour augmenter les taux de conversion et améliorer la satisfaction client.
Sezzle Express Checkout est actuellement en version Beta et uniquement disponible pour les marchands en intégration directe. Contactez votre gestionnaire de compte pour obtenir un accès anticipé.
## Expérience de l'acheteur
Les acheteurs Sezzle peuvent éviter la saisie manuelle lors du paiement chez le marchand en utilisant les informations de contact et les détails de carte de leur compte Sezzle. Il suffit de se connecter et de confirmer l'adresse de livraison, évitant ainsi jusqu'à 20 champs à remplir.

Les acheteurs cliquent sur le bouton Sezzle Express pour accéder à la page de paiement de Sezzle.
L'acheteur se connecte à Sezzle et confirme son adresse de livraison.
L'acheteur sélectionne son plan de paiement préféré.
Les détails de l'acheteur sont envoyés au marchand, gagnant ainsi du temps.
Le processus de paiement express minimise les frictions en éliminant le besoin pour les acheteurs de saisir manuellement les détails d'expédition et de paiement, en particulier pour les acheteurs Sezzle réguliers dont les informations sont déjà enregistrées. Les données pré-remplies, rendues possibles par l'intégration API du marchand, créent une expérience fluide qui réduit les abandons de panier et stimule les ventes.
### Comparaison avec le flux de paiement standard
Sans le bouton de paiement Sezzle ou les informations pré-remplies, le processus de paiement implique plusieurs étapes, ce qui peut conduire à l'abandon du panier en raison de sa complexité :
1. Ajouter des articles au panier et procéder au paiement
* Les acheteurs sélectionnent les produits souhaités et lancent le processus de paiement sur le site web du marchand
2. Saisir les informations de contact
* Les acheteurs saisissent manuellement leur nom, email et numéro de téléphone
3. Saisir les détails de livraison
* Les acheteurs saisissent manuellement leur adresse
4. Sélectionner le mode de livraison
* Les acheteurs sélectionnent manuellement leur mode de livraison
5. Sélectionner Sezzle comme mode de paiement
* Les acheteurs choisissent Sezzle parmi les options de paiement disponibles et sont redirigés vers la page de paiement de Sezzle
6. Se connecter et finaliser l'achat
* Sur le site de Sezzle, les acheteurs se connectent ou créent un compte, confirment leur plan de paiement (par exemple, 25% à l'avance, trois versements) et finalisent la commande
Ce processus en plusieurs étapes peut décourager les acheteurs, en particulier ceux qui trouvent fastidieux de saisir des informations ou qui abandonnent leur panier en raison de formulaires trop longs.
## Comment ça marche

## FAQ
Actuellement, vous devez avoir une intégration directe pour utiliser Sezzle Express Checkout. Dans un futur proche, nous ajouterons des intégrations pour les plateformes e-commerce populaires.
Actuellement, vous devez fournir une méthode d'expédition par défaut. Dans un futur proche, nous ajouterons une fonctionnalité permettant à vos acheteurs de sélectionner leur méthode d'expédition préférée.
# null
Source: https://docs.sezzle.com/fr/docs/guides/express/quick-guide
L'option Express Checkout n'est disponible que pour les marchands en intégration directe.
## Installation
1. Importer la Bibliothèque
* Copiez ce script dans le `` de votre code de site
```html
```
2. Ajouter la Configuration
* Configurer [Express Checkout](./express-checkout#configuration-options)
```diff
const checkoutSdk = new ExpressCheckout({
mode: "popup",
+ publicKey: `${yourSezzleAPIKey}`,
apiMode: "live",
apiVersion: "v2",
});
```
* Configurer les [écouteurs d'événements](./express-checkout#configuration-options)
```diff [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({
checkout_payload: {
is_express_checkout: true,
order: {
+ intent: "CAPTURE",
+ reference_id: yourReferenceID,
+ description: yourDescription,
requires_shipping_info: true,
items: [
{
+ name: yourProductName,
+ sku: yourProductSKU,
+ quantity: yourQuantity,
price: {
+ amount_in_cents: yourProductPrice,
+ currency: "USD",
},
},
],
discounts: [
{
+ name: yourDiscountName,
amount: {
+ amount_in_cents: yourDiscount,
+ currency: "USD",
},
},
],
shipping_amount: {
+ amount_in_cents: yourShippingAmount,
+ currency: "USD",
},
tax_amount: {
+ amount_in_cents: yourTaxAmount,
+ currency: "USD",
},
order_amount: {
+ amount_in_cents: yourOrderAmount,
+ currency: "USD",
},
},
},
});
},
onComplete: function (response) {
alert("Completed transaction. Capture started.");
checkoutSdk
.capturePayment(response.data.order_uuid, {
capture_amount: {
+ amount_in_cents: yourCaptureAmount,
+ currency: "USD",
},
partial_capture: false,
})
.then((r) => {
console.log(r);
});
},
onCancel: function () {
alert("Transaction cancelled.");
},
onFailure: function () {
alert("Transaction failed.");
},
onCalculateAddressRelatedCosts: async function (
shippingAddress,
order_uuid
) {
// Call authentication endpoint
const response = await fetch(
+ `$(yourBackendAuthenticationURL)`,
{
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
+ public_key: yourSezzlePublicKey,
+ private_key: yourSezzlePrivateKey,
}),
}
);
const data = await response.json();
const token = data.token;
const updateResponse = await fetch(
+ `$(yourBackendUpdateOrderURL)`,
{
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
body: JSON.stringify({
+ amount_in_cents: yourAmount,
+ currency_code: "USD",
+ shipping_amount_in_cents: yourShippingAmount,
+ tax_amount_in_cents: yourTaxAmount,
address_uuid: shippingAddress.uuid,
}),
}
);
const updateStatus = updateResponse.ok;
return {
ok: updateStatus,
};
},
});
```
3. Installer le Bouton
* Copiez cet élément de placeholder à l'endroit où vous souhaitez que le bouton s'affiche sur la page
* [Voir ici pour les options de personnalisation](./express-checkout#sezzle-button-configuration)
```html
```
* Charger le bouton en utilisant Javascript
```javascript
await checkoutSdk.renderSezzleButton("sezzle-smart-button-container");
```
# null
Source: https://docs.sezzle.com/fr/docs/guides/in-store
L'API de paiement POS Sezzle permet aux marchands d'envoyer un lien de paiement Sezzle aux clients par SMS ou e-mail et de recevoir des mises à jour de paiement en temps réel sur leur système POS une fois le paiement terminé.
## Expérience client
Voici ce que le client voit s'il clique sur le lien du message texte ou de l'e-mail.
L'acheteur saisit son numéro de téléphone et son OTP.
L'acheteur ajoute un mode de paiement.
L'acheteur sélectionne son plan de versements préféré.
L'acheteur finalise sa commande Sezzle.
### Paiement API direct
1. Le marchand crée une[session](/fr/docs/api/core/sessions/postv2session)
* Définir l'intention de la commande`intent`sur`AUTH`
* Le paiement du client est envoyé par SMS ou e-mail comme défini dans`send_checkout_url`
2. Sezzle renvoie l'UUID de la commande et l'URL de paiement
3. Le client reçoit l'URL Sezzle par SMS ou e-mail pour effectuer le paiement
4. Le client finalise le paiement Sezzle
5. Le marchand reçoit une notification de commande terminée
* Vous pouvez soit[obtenir les détails de la commande](/fr/docs/api/core/orders/getv2order)ou vous abonner aux[webhooks](/fr/docs/api/core/webhooks/postv2webhooks)
6. (facultatif) Mettre à jour la[référence de commande](https://docs.sezzle.com/docs/guides/virtual/automated#set-order-reference-id)
7. [Capturer](/fr/docs/api/core/orders/postv2capturebyorder)le paiement
8. (facultatif) Expirer manuellement le paiement
* [Supprimer le paiement](/fr/docs/api/core/orders/deletev2deletecheckoutbyorder)si le client n'a pas finalisé le paiement et que le marchand a annulé la commande
9. (facultatif)[Rembourser](/fr/docs/api/core/orders/postv2refundbyorder)la commande
# null
Source: https://docs.sezzle.com/fr/docs/guides/sezzle/introduction
Sezzle offre un moyen simple d'intégrer des options de paiement flexibles dans votre processus de paiement. Avec une conception axée sur une configuration rapide et efficace, notre solution vous permet de démarrer plus rapidement que vous ne pourriez l'imaginer.
## Commencez avec Sezzle
Sélectionnez l'option d'intégration qui convient le mieux à votre boutique.
Utilisez nos API pour intégrer Sezzle dans votre boutique en ligne personnalisée.
Intégrations pour Shopify, Magento 2, Wix, WooCommerce, et plus encore.
* Acceptez les paiements Sezzle comme des transactions par carte de crédit.
Permettez à vos clients de payer avec Sezzle dans votre magasin physique.
## Boosters de Conversion
Augmentez vos ventes avec ces produits Sezzle supplémentaires.
Mettez en avant Sezzle comme mode de paiement sur les pages de produits.
Augmentez les taux de conversion et améliorez la satisfaction client.
## Ressources Supplémentaires
Celles-ci accéléreront votre intégration de Sezzle.
Acceptez les paiements web et in-app grâce à notre intégration API étendue.
Contactez notre équipe de Support Marchand pour obtenir de l'aide avec l'intégration de Sezzle.
## Comment Fonctionne Sezzle
L'acheteur ajoute votre produit à son panier.
L'acheteur sélectionne "Acheter maintenant, payer plus tard avec Sezzle" au moment du paiement.
L'acheteur sélectionne son plan de versements préféré.
L'acheteur finalise sa commande Sezzle.
## Intégrations Populaires






# null
Source: https://docs.sezzle.com/fr/docs/guides/virtual/automated
C'est la façon la plus rapide de commencer à utiliser l'offre de carte virtuelle de Sezzle. Un paiement par carte virtuelle implémente l'API de session de carte pour fournir une solution facile à utiliser et contextuelle pour émettre et utiliser une carte virtuelle Sezzle comme moyen de paiement.
L'environnement de non-production de Sezzle ne fournit pas de moyen de tester le traitement des paiements en utilisant votre fournisseur.
Paiement par carte virtuelle dans un iframe ou une fenêtre pop-up.
Activez les détails de la carte simple via un événement de message ou une tokenisation.
Gérez le succès, l'échec ou l'annulation du paiement avec vos commandes par carte virtuelle.
Affichez le bouton de paiement Sezzle sur votre boutique.
## Inclure le code SDK
Incluez le script suivant dans la``section de la page.
```html
```
## Configuration du paiement
La première exigence pour commencer avec le SDK de carte virtuelle est de configurer un nouvel objet Checkout.
### Options de configuration
```javascript
const checkoutSdk = new Checkout({
mode: string,
publicKey: string,
apiMode: string,
isVirtualCard: boolean,
});
```
```javascript
const checkoutSdk = new Checkout({
mode: "popup",
publicKey: "qxorvmr7zbww7yw8vvhlxi8s3uko18q7",
apiMode: "sandbox",
isVirtualCard: true,
});
```
Options disponibles :`popup`,`iframe`,`redirect`
**popup**Le mode fonctionnera directement. Aucune configuration supplémentaire n'est requise pour utiliser**popup**. Sezzle recommande actuellement le mode**popup**.**iframe**Le mode ne fonctionnera pas correctement sans contacter d'abord Sezzle. Pour des raisons de sécurité, Sezzle doit activer**iframe**pour votre(vos) domaine(s). Pour l'activer, veuillez soumettre une demande avec votre UUID de marchand Sezzle et une liste des domaines à autoriser par environnement (production et sandbox). Par exemple,[*please enable uat1.mysite.com, uat2.mysite.com in sandbox and www.mysite.com, mysite.com in production*](http://www.mysite.com).
L'intégration pour**popup**et**iframe**sont identiques, à l'exception du mode. L'utilisation du mode**popup**accélérera votre développement. Une fois l'intégration terminée, si**iframe**est une exigence, contactez alors Sezzle pour activer votre(vos) domaine(s) et passez le mode à**iframe**.
Utilisé lors de la création d'un paiement ou de la capture d'un paiement. Trouvez vos clés API sur[https://dashboard.sezzle.com/merchant/settings/apikeys](https://dashboard.sezzle.com/merchant/settings/apikeys)
Environnement dans lequel le paiement doit être effectué
Options disponibles :`live`,`sandbox`
Utilisez`true`pour activer cette fonctionnalité
## Bouton Sezzle
### Configuration du bouton Sezzle
Créez un élément de placeholder pour que le bouton Sezzle soit rendu sur la(les) page(s).
```html
```
```html
```
Texte à afficher à l'intérieur du bouton. Utilisez`%%logo%%`dans le texte pour afficher l'image Sezzle
Options disponibles :`square`,`semi-rounded`
Classes personnalisées à appliquer
Espace négatif entre le haut du contenu et le bord du bouton
Espace négatif entre le bas du contenu et le bord du bouton
Espace négatif entre le côté gauche du contenu et le bord du bouton
Espace négatif entre le côté droit du contenu et le bord du bouton
Largeur du logo Sezzle dans le bouton
Position du logo Sezzle depuis le haut.
Position du logo Sezzle depuis le bas.
Position du logo Sezzle depuis la gauche.
Position du logo Sezzle depuis la droite.
Espacement entre les lettres du texte du modèle.
Largeur du bouton
Hauteur du bouton.
### Rendre le bouton Sezzle
Nécessite d'avoir l'objet`checkout`créé ci-dessus pour rendre le bouton. Appelez`renderSezzleButton`en passant le`id`de l'élément placeholder défini dans la Configuration du bouton, ci-dessus.
```javascript
checkoutSdk.renderSezzleButton("sezzle-smart-button-container");
```
## Initialiser le paiement
### Gestionnaires d'événements
Le SDK nécessite les gestionnaires d'événements suivants qui peuvent être utilisés pour étendre les fonctionnalités de votre application.
```javascript
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({...});
},
onComplete: function (event) {
console.log(event.data);
},
onCancel: function () {
console.log("Checkout cancelled.");
},
onFailure: function () {
console.log("Checkout failed.");
},
});
```
```javascript [expandable]
checkoutSdk.init({
onClick: function () {
event.preventDefault();
checkoutSdk.startCheckout({
checkout_payload: {
amount_in_cents: 1000,
currency: "USD",
merchant_reference_id: "merchant-checkout-id-max-255",
customer: {
email: "test@test.com",
first_name: "John",
last_name: "Doe",
phone: "0987654321",
billing_address_street1: "3432 Terry Lane",
billing_address_street2: "12",
billing_address_city: "Katy",
billing_address_state: "TX",
billing_address_postal_code: "77449",
billing_address_country_code: "US",
},
items: [
{
name: "Blue tee",
sku: "sku123456",
quantity: 1,
price: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
},
});
},
onComplete: function (event) {
console.log(event.data);
},
onCancel: function () {
console.log("Checkout cancelled.");
},
onFailure: function () {
console.log("Checkout failed.");
},
});
```
Le bouton Sezzle est cliqué par l'utilisateur.
Voir la section[Initialisation du paiement](#checkout-initialization)pour les options de charge utile.
Le paiement Sezzle est effectué avec succès. Un paiement Sezzle réussi déclenchera un événement vers le gestionnaire`onComplete`. L'événement devrait inclure un objet de données avec des données pertinentes pour le paramètre d'entrée de début de paiement.
Le paiement Sezzle est annulé. Si l'utilisateur quitte le paiement Sezzle pour une raison quelconque, le gestionnaire`onCancel`sera exécuté.
Le paiement Sezzle a échoué. S'il y a une erreur lors du chargement de la page de paiement Sezzle, le gestionnaire`onFailure`sera exécuté.
### Initialisation du paiement
```javascript [expandable]
checkoutSdk.startCheckout({
checkout_payload: {
amount_in_cents: integer,
currency: string,
merchant_reference_id: string,
customer: {
email: string,
first_name: string,
last_name: string,
phone: string,
billing_address_street1: string,
billing_address_street2: string,
billing_address_city: string,
billing_address_state: string,
billing_address_postal_code: string,
billing_address_country_code: string,
},
items: [
{
name: string,
sku: string,
quantity: integer,
price: {
amount_in_cents: integer,
currency: string,
},
},
],
},
});
```
```javascript [expandable]
checkoutSdk.startCheckout({
checkout_payload: {
amount_in_cents: 1000,
currency: "USD",
merchant_reference_id: "merchant-checkout-id-max-255",
customer: {
email: "test@test.com",
first_name: "John",
last_name: "Doe",
phone: "0987654321",
billing_address_street1: "3432 Terry Lane",
billing_address_street2: "12",
billing_address_city: "Katy",
billing_address_state: "TX",
billing_address_postal_code: "77449",
billing_address_country_code: "US",
},
items: [
{
name: "Blue tee",
sku: "sku123456",
quantity: 1,
price: {
amount_in_cents: 1000,
currency: "USD",
},
},
],
},
});
```
`checkout_payload`est optionnel mais fournir autant d'informations que possible améliorera l'expérience client.
Le montant de l'article en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
Généralement un identifiant de paiement ou de panier, actuellement utilisé uniquement pour le suivi (doit contenir uniquement des caractères alphanumériques, des tirets (-) et des traits de soulignement (\_))
Utilisé uniquement pour le dépannage. L'ID de référence qui apparaît dans le tableau de bord du marchand peut être défini en utilisant[Définir l'ID de référence de la commande](#set-order-reference-id)
Le client pour la commande
L'adresse e-mail du client
Le prénom du client
Le nom de famille du client
Le numéro de téléphone du client
La rue et le numéro de l'adresse
L'appartement ou l'unité
La ville
Le code d'état à 2 caractères
Le code postal
Le code pays à 2 caractères
Les articles achetés
Le nom de l'article
L'identifiant SKU
La quantité achetée
L'objet prix
Le montant de l'article en centimes
Le code de devise à 3 caractères tel que défini par ISO 4217
### `onComplete`avec les données de la carte
Le`event.data`contiendra une charge utile complète contenant le mode de paiement du client. Ces informations ne sont pas le mode de paiement utilisé pour payer Sezzle mais un mode de paiement qui peut être utilisé via votre passerelle de paiement (Cybersource, Stripe, Braintree, etc).
#### `event.data`réponse
```json [expandable]
{
"session_id": string,
"card": {
"firstName": string,
"lastName": string,
"pan": string,
"cvv": string,
"expiryMonth": string,
"expiryYear": string
},
"holder": {
"email": string,
"phone": string,
"firstName": string,
"lastName": string,
"address1": string,
"address2": string,
"city": string,
"state": string,
"country": string,
"postalCode": string
}
}
```
```json [expandable]
{
"session_id": "123",
"card": {
"firstName": "John",
"lastName": "Doe",
"pan": "1234",
"cvv": "123",
"expiryMonth": "02",
"expiryYear": "28"
},
"holder": {
"email": "john.doe@example.com",
"phone": "6125551234",
"firstName": "John",
"lastName": "Doe",
"address1": "123 W Lake St",
"address2": "Unit 104",
"city": "Minneapolis",
"state": "MN",
"country": "US",
"postalCode": "55408"
}
}
```
Le prénom sur la carte
Le nom de famille sur la carte
Le code de sécurité au dos de la carte
Le mois d'expiration sur la carte
L'année d'expiration sur la carte
L'adresse e-mail du client
Le numéro de téléphone du client
Le prénom du client
Le nom de famille du client
La rue et le numéro de l'adresse
L'appartement ou l'unité
La ville
Le code d'état à 2 caractères
Le code pays à 2 caractères
Le code postal
### `onComplete`avec tokenisation
La tokenisation est une fonctionnalité développée pour les marchands qui ne souhaitent pas que les informations de carte soient envoyées directement via l'événement de message. Au lieu de cela, la charge utile pour`onComplete`contiendra une chaîne de jeton de carte.
#### Initialisation du paiement
```diff
checkout.init({
onClick: function () {
event.preventDefault();
checkout.startCheckout({
checkout_payload: {
...
+ "card_response_format":"token"
}
});
},
onComplete: function (event) {
console.log(event.data)
},
onCancel: function() {
console.log("checkout canceled");
},
onFailure: function() {
console.log("checkout failed");
}
})
```
#### `event.data`réponse
```json
{
"card": {
"token": string
}
}
```
```json
{
"card": {
"token": "abc12345"
}
}
```
#### Obtenir les données de la carte
Les données de la carte virtuelle peuvent être obtenues en utilisant le jeton ci-dessus en utilisant la[Données de carte virtuelle](/fr/docs/api/core/sessions/virtual/carddatabytoken)méthode.
## Définir l'ID de référence de commande
Dans de nombreux cas, l'ID de commande du marchand ne sera pas généré avant que le paiement ne soit terminé et qu'une commande ne soit créée. Appelez`setOrderReferenceID`pour définir l'ID de référence de commande Sezzle avec l'ID de commande du marchand après que la transaction de carte virtuelle a été effectuée avec succès.
### Utilisation du SDK
```javascript
checkoutSdk.setOrderReferenceID({
session_id: string,
order_id: string,
});
```
```javascript
checkout.setOrderReferenceID({
session_id: "example-session-id",
order_id: "merchant-order-id",
});
```
### Utilisation de l'API
Le[Mettre à jour la session de carte](/fr/docs/api/core/sessions/virtual/setorderid)point de terminaison API existe où vous pouvez mettre à jour l'ID de commande basé.
# null
Source: https://docs.sezzle.com/fr/docs/guides/virtual/introduction
* La Carte Virtuelle Sezzle permet aux marchands de :
* Accepter les paiements Sezzle comme des transactions par carte de crédit.
* S'intégrer de manière transparente aux formulaires de carte de crédit existants lors du paiement.
* Pour les questions liées à l'API, contactez l'équipe Sezzle via le formulaire[Merchant Help Request](https://merchant-help.sezzle.com/hc/en-us/requests/new).
* Un compte Sezzle approuvé est nécessaire pour commencer l'intégration ;[sign up](https://dashboard.sezzle.com/merchant/signup)si vous n'en avez pas.
* Les points de terminaison dans ce guide nécessitent un jeton[authentication](/fr/docs/api/core/authentication/postauthentication).
Vous pouvez tester votre intégration avec Sezzle en utilisant[Sezzle sandbox test environment](/fr/docs/api/environments).
Ce produit n'est actuellement disponible qu'aux États-Unis. Le support pour le Canada arrive bientôt.
L'acheteur sélectionne "Faire une demande d'achat" sur l'onglet Carte Virtuelle.
L'acheteur saisit le montant qu'il prévoit de dépenser.
L'acheteur lit les conditions du prêt et continue s'il est d'accord.
L'acheteur utilise la carte virtuelle à votre caisse ou terminal.
# null
Source: https://docs.sezzle.com/fr/docs/guides/virtual/manual
Si le [SDK de carte virtuelle](./automated) n'est pas une option viable, l'intégration manuelle vous guidera à travers les étapes pour compléter une session de carte virtuelle dans votre processus de paiement.
## Aperçu
1. Créez une [session de carte virtuelle](/fr/docs/api/core/sessions/virtual/postv2sessioncard)
2. Ajoutez un écouteur d'événement de fenêtre avec le type `message` à la page de paiement
3. Ouvrez la session de carte `dashboard_url` en utilisant le mode fourni dans la demande de création de session de carte
4. Sezzle enverra un message à l'écouteur lorsque l'utilisateur aura terminé la session de carte
5. Vérifiez que le message `event.data` existe
6. Vérifiez `event.data.szl_source` `=` `v_card`
7. Vérifiez `event.data.card` et `event.data.holder` existent tous les deux
* S'ils existent
* Utiliser les données de la carte et du titulaire pour soumettre la commande par carte de crédit
* S'ils n'existent pas
* L'utilisateur n'a pas fourni de données de carte virtuelle
## Exemple Javascript
```javascript [expandable]
window.addEventListener("message", function () {
var data = event.data || Object.create(null);
if (data.szl_source !== "v_card") {
console.log("invalid source");
return;
}
var card = data.card;
var holder = data.holder;
if (!card && !holder) {
console.log("failed virtual card session");
return;
}
console.log(
"card data:",
card.firstName,
card.lastName,
card.pan,
card.cvv,
card.expiryMonth,
card.expiryYear
);
console.log(
"holder data:",
holder.email,
holder.phone,
holder.firstName,
holder.lastName,
holder.address1,
holder.address2,
holder.city,
holder.state,
holder.country,
holder.postalCode
);
});
```
# null
Source: https://docs.sezzle.com/fr/docs/guides/widgets/sdk
## Objectif
Augmentez les conversions et la valeur moyenne des commandes en présentant les options de financement de Sezzle aux acheteurs lorsqu'ils naviguent sur votre site.
## Aperçu
Le widget de messagerie promotionnelle Sezzle affiche les options de financement disponibles sur les pages de produits et de panier, encourageant les achats. Suivez les instructions d'installation ci-dessous pour ajouter le widget à votre site web.
## Installation
* **Installation en un clic**: De nombreuses plateformes leaders offrent une installation en un clic avec Sezzle.[Vérifiez la compatibilité avec votre plateforme](https://docs.sezzle.com/docs/plugins/).
* **Installation manuelle**: Si l'installation en un clic n'est pas disponible ou incompatible avec votre thème, consultez le guide d'installation manuelle ou contactez[merchantsupport@sezzle.com](mailto:merchantsupport@sezzle.com)pour obtenir de l'aide.
## Personnalisation
Sezzle offre de nombreuses options de configuration pour adapter le widget aux besoins de votre site. Notre équipe d'ingénieurs est disponible pour assurer une intégration parfaite avec le design et les fonctionnalités de votre site web.
### HTML requis
```html
```
Remplacez`{merchant_id}`par votre valeur de 36 caractères provenant de votre[Tableau de bord marchand](https://dashboard.sezzle.com/merchant/settings/business).
## Configuration par le marchand
La configuration est requise avant d'invoquer le script du widget de prix.
## `document.sezzleConfig`Options
```html [expandable]
```
```html [expandable]
```
Permet plusieurs configurations pour un même magasin afin de s'adapter à différents types de pages, mises en page ou applications. Consultez toutes les options disponibles pour la personnalisation.
ID, classe ou chemin vers l'élément de la page web où la valeur textuelle du prix du produit sera détectée.\
Pour indiquer un chemin, les sous-chemins sont séparés par '/', les ID sont précédés de '#', les classes par '.', et les noms de balises sont suffixés par un index (`tagName-Index`). Les index commencent à zéro.
Par exemple, '#ProductSection/.product-price/SPAN-1' ciblerait le 2ème élément 'SPAN' contenu dans les éléments qui contiennent la classe 'product-price', eux-mêmes contenus dans l'élément avec un ID 'ProductSection'.
Chemin depuis`targetXPath`vers l'élément après lequel le widget Sezzle doit être rendu.\
Utilisez '.' pour un placement frère, '../' pour remonter aux parents, et les sélecteurs tag-index pour descendre. Même syntaxe que`targetXPath`.
Par exemple, '../../BUTTON-0' irait à l'élément grand-parent du targetXPath et placerait le widget après le premier bouton trouvé dans ce conteneur.
Mot spécifique apparaissant dans l'URL des pages où la configuration du widget doit s'appliquer. Les valeurs typiques sont 'product' ou 'cart'.
Met à jour la couleur du logo pour s'harmoniser avec différentes couleurs de fond. Si non spécifié, le widget tentera de détecter la couleur de fond et appliquera un logo contrastant.
Options disponibles :`dark`,`light`,`black-flat`,`white-flat`.
Style personnalisé à appliquer au conteneur du widget Sezzle. Accepte du CSS au format JSON. Les clés doivent utiliser le camelCase, être entourées de guillemets et séparées par des virgules.
La clé doit être la propriété CSS que vous souhaitez définir, en camelCase, la valeur doit être de type chaîne
Style personnalisé à appliquer au texte Sezzle dans le widget. Accepte du CSS au format JSON. Les clés doivent utiliser le camelCase, être entourées de guillemets et séparées par des virgules.
La clé doit être la propriété CSS que vous souhaitez définir, en camelCase, la valeur doit être de type chaîne
Style personnalisé à appliquer au logo Sezzle dans le widget. Accepte du CSS au format JSON. Les clés doivent utiliser le camelCase, être entourées de guillemets et séparées par des virgules.
La clé doit être la propriété CSS que vous souhaitez définir, en camelCase, la valeur doit être de type chaîne
Le chemin depuis le targetXPath vers l'élément observable
La fonction reçoit deux paramètres. Le premier est l'élément associé selon`relatedPath`, le second est le widget qui correspond à cet élément`targetXPath`. Écrivez une fonction personnalisée pour vérifier la condition sur relatedPath, puis effectuez une action sur le widget.
Éléments enfants directs de`targetXPath`à ignorer lors de la détection du prix. Utile pour gérer les variations entre les articles en solde et à prix régulier.
Chaînes de texte dans`targetXPath`à ignorer lors de la détection du prix et du rendu du widget.
XPath des éléments qui doivent être masqués lorsque le widget de Sezzle s'affiche.\
Malgré son nom, cette configuration accepte un tableau de XPaths.
Par exemple : \["#viabill-pricetag",".afterpay-paragraph","QUADPAYWIDGET-0"]
Alignement du widget par rapport à l'élément parent.
Options disponibles :`left`,`center`,`right`,`auto`
Largeur d'écran en pixels en dessous de laquelle l'alignement passe à`alignmentSwitchType`. Point de rupture courant : 768px (pour mobile vs bureau).
Alignement du widget à appliquer lorsque la largeur de la fenêtre est inférieure à`alignmentSwitchMinWidth`.
Options disponibles :`left`,`center`,`right`,`auto`
Le logo d'Afterpay est ajouté au contenu du widget. Lorsqu'il est cliqué, la fenêtre modale du concurrent s'affichera.
Le logo de Klarna est ajouté au contenu du widget. Lorsqu'il est cliqué, la fenêtre modale du concurrent s'affichera.
Prix minimum en centimes pour lequel Sezzle peut être sélectionné au moment du paiement. Si le prix à`targetXPath`est inférieur à ce nombre, le widget s'affichera avec une note indiquant le prix minimum éligible requis. Cette configuration n'empêche pas un client de payer avec Sezzle en dessous de ce prix. Pour plus d'informations sur la définition d'un minimum de passerelle, contactez votre représentant du succès des marchands ou utilisez la section Contactez-nous du tableau de bord marchand Sezzle.
Prix maximum en centimes pour lequel le widget doit être rendu. Si le prix à`targetXPath`est supérieur à ce nombre, le widget ne s'affichera pas sur la page.
Langue dans laquelle le texte du widget doit être rendu. Si la langue spécifiée n'est pas prise en charge, la traduction sera par défaut en anglais.
Options disponibles :`left`,`center`,`right`,`auto`
Peut attacher des écouteurs d'événements aux éléments DOM et réinitialiser le widget.
L'id ou la classe de l'élément à observer
Le type d'événement à observer, lors duquel le widget sera re-rendu
#### Exemple simple
```html
```
```html
```
## Rendu des widgets
Après avoir construit la configuration, il est temps de télécharger les widgets sur vos pages web ! Le SDK doit être appelé dans le HTML de la page web pour que les widgets soient rendus. Placez la configuration et le script du widget au bas du fichier de code pour la page HTML, et vous devriez être prêt !
Un extrait de code pré-rempli devrait être fourni dans la liste de contrôle de configuration de votre tableau de bord marchand Sezzle.
Lorsque vous utilisez cet extrait pour ajouter le script du widget à votre site, vous devez remplacer`{merchant_id}` avec l'ID Marchand Sezzle de 36 caractères trouvé dans les [Paramètres d'entreprise de votre Tableau de bord Marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/business) pour le magasin applicable. Veuillez ne pas réutiliser les ID sur plusieurs URL.
Le script avec l'ID marchand applicable **doit** être inclus *après* `document.sezzleConfig` est défini.
### HTML nécessaire
```html
```
Remplacez `{merchant_id}` par votre valeur de 36 caractères provenant de votre Tableau de bord Marchand.
# null
Source: https://docs.sezzle.com/fr/docs/guides/widgets/static
Le Widget Statique permet aux marchands d'intégrer le widget Sezzle dans leur site web sans communication directe avec les serveurs de Sezzle. Tout le code du widget, les configurations personnalisées, les images et les feuilles de style sont hébergés localement dans le thème de la boutique du marchand. Cette approche offre :
* Des temps de chargement plus rapides
* L'hébergement local réduit la dépendance aux serveurs externes.
* Un plus grand contrôle
* Les marchands ont un contrôle total sur l'apparence et le comportement du widget, car l'équipe Sezzle ne peut pas le modifier.
Ce contrôle local signifie que les marchands sont responsables de toutes les mises à jour ou modifications du widget.
## Implémentation NPM
Utilisation de npm :
`npm install @sezzle/sezzle-static-widget@latest`
Dans votre page de produit, ajoutez le snippet de code suivant où vous voulez que le widget s'affiche, en mettant à jour le chemin vers node\_modules selon votre structure de fichiers :
```html
```
Utilisez les options de Configuration ci-dessous pour personnaliser l'apparence du widget selon vos souhaits.
## Implémentation HTML
L'implémentation varie grandement selon la plateforme, le thème, etc. Voici un aperçu général du processus. Les snippets de code ci-dessous sont des exemples et peuvent nécessiter des modifications pour s'adapter à votre site. Pour les marchands Shopify, veuillez passer à la section suivante.
1. Créez un nouveau fichier Javascript dans le code de votre site à l'endroit approprié
2. Copiez et collez [ce code minifié](https://github.com/sezzle/static-widgets/blob/production/dist/bundle.js) dans le fichier nouvellement créé
3. Importez le nouveau fichier dans la/les page(s) où le widget Sezzle sera ajouté
```html
```
4. Créez un élément de placeholder où le widget Sezzle doit être rendu sur la/les page(s), généralement en dessous de l'élément contenant le prix
```html
```
5. Ajoutez le script suivant en dessous de l'élément de placeholder, en mettant à jour la valeur du montant pour refléter votre variable de prix qui affiche le prix actuel du produit ou le total du panier selon le cas
```html
```
6. Prévisualisez vos modifications pour confirmer que le widget s'affiche correctement dans chacun des scénarios suivants
* Utilisez les options de Configuration ci-dessous pour personnaliser l'apparence du widget selon vos souhaits :
* Prix normal
* Prix en solde
* Sélection de variante
* Bureau
* Mobile
## Implémentation Shopify
1. Connectez-vous à l'administration de votre boutique Shopify
2. Cliquez sur `Online Store` > `Themes`
3. À côté du thème que vous souhaitez modifier, cliquez sur `Actions`, puis sélectionnez `Edit Code`
4. Sous le dossier `Assets`, cliquez sur `Add a new asset`
5. Dans l'onglet `Create a Blank File`, nommez le fichier `sezzle-static-widget` et sélectionnez `.js` comme type de fichier, puis cliquez sur `Add Asset`
6. Copiez le code du [fichier du dépôt](https://github.com/sezzle/static-widgets/blob/production/dist/bundle.js) et collez-le dans ce nouveau fichier, puis cliquez sur `Save`
7. Ajoutez les lignes de code suivantes là où le widget doit s'afficher sur la page du produit dans `templates/product.liquid` ou `sections/product-template.liquid` selon le cas
```html
{{ 'sezzle-static-widget.js' | asset_url | script_tag }}
```
8. Ajoutez les lignes de code suivantes là où le widget doit s'afficher sur la page du panier dans `templates/cart.liquid` ou `sections/cart-template.liquid` selon le cas
```html
{{ 'sezzle-static-widget.js' | asset_url | script_tag }}
```
# Personnalisation de la configuration
Une fois que le widget s'affiche, des configurations supplémentaires peuvent être ajoutées à AwesomeSezzle pour modifier son apparence. Voici un exemple présentant toutes les options. Cependant, amount est la seule valeur requise.
```html [expandable]
```
```html
```
Le montant du prix cible, au format dollar.\
Fournissez la variable du prix du produit comme un littéral de modèle.\
Exemple Shopify Liquid : `'{{ product.selected_or_first_available_variant.price | money }}'`
Fournissez le nom de l'ID ou un tableau de noms d'ID correspondant aux éléments de placeholder du widget où le widget doit être rendu.
Met à jour la couleur du logo pour s'harmoniser et contraster avec différentes couleurs de fond des sites web. Si `theme` n'est pas spécifié, le widget tentera de détecter la couleur de fond et d'appliquer le logo contrastant approprié. Utilisez "light" ou "black-flat" pour les fonds clairs, et "dark" ou "white-flat" pour les fonds sombres.
Options disponibles : `dark`, `light`, `black-flat`, `white-flat`
Largeur maximale de l'élément widget en pixels. Réglez à 200 pour afficher le widget joliment sur 2 lignes, ou 120 pour 3 lignes.
Espace au-dessus du widget en pixels.
Espace en dessous du widget en pixels.
Espace à gauche du widget en pixels.
Espace à droite du widget en pixels.
Alignement du widget par rapport à l'élément parent.
Options disponibles : `left`,`center`, `right`, `auto`.
Largeur d'écran en pixels en dessous de laquelle l'alignement passe à `alignmentSwitchType` au lieu de `alignment`. Le point de rupture le plus courant est *768* (portable vs bureau). `alignmentSwitchMinWidth` n'est généralement nécessaire que lorsque l'alignement n'est pas défini sur `auto`.
Alignement du widget par rapport à l'élément parent à appliquer lorsque la largeur de la fenêtre est inférieure à `alignmentSwitchMinWidth`.
Options disponibles : `left`,`center`, `right`, `auto`.
Couleur du texte du widget. Accepte tous les formats de couleur CSS : hex, rgb(), hsl(), etc.
Famille de police du texte du widget.
Taille de police du texte du widget en pixels. Entrez uniquement des chiffres — n'incluez pas d'unités comme`px`!
Épaisseur du texte du widget. 100 est le plus léger, 900 est le plus gras.
Spécifie la catégorie de page sur laquelle le widget est rendu. Options disponibles :`product-page`,`product-preview`,`cart`.
Définit la valeur CSS de la hauteur fixe.
Ratio auquel le logo Sezzle est mis à l'échelle. L'espace que le logo occupe entre le texte du widget et le lien/icône Plus d'infos est déterminé par la taille de la police.
Style personnalisé à appliquer au logo Sezzle dans le widget. L'objet accepte tout style CSS au format JSON. Les clés doivent être en camelCase.
Langue dans laquelle le texte du widget doit être rendu. Si la langue spécifiée n'est pas prise en charge, la traduction sera par défaut en anglais.
Options disponibles :`en`,`fr`,`es`,`de`.
Permet au prix des versements du widget de calculer et formater correctement pour les devises étrangères.
Options disponibles :`default`,`comma`.
Permet au widget d'afficher les détails du programme corrects, selon que le marchand est inscrit via Sezzle North America ou Sezzle Europe.
Options disponibles :`North America`,`Europe`.
## Méthodes
Les fonctions suivantes sont intégrées dans le widget statique et sont prêtes à être utilisées pour votre installation de widget. Ajoutez simplement l'extrait de code applicable à votre code de page web, en mettant à jour l'écouteur d'événements et les variables si nécessaire.
### `alterPrice(newPrice)`
Modifie le prix sur le widget. Créez un écouteur d'événements après`renderSezzle.init()`qui invoque cette fonction où`newPrice`est la nouvelle valeur de prix de la variante sélectionnée. Exemple :
```javascript
document.onchange = function () {
var newPrice = "${yourPriceVariableHere}";
renderSezzle.alterPrice(newPrice);
};
```
### `renderModalByfunction()`
Ouvre la fenêtre modale Sezzle par une fonction. Créez un écouteur d'événements qui invoque cette fonction si l'emplacement de l'événement est autre que l'icône d'information.
```javascript
var clickElement = document.querySelector("#yourClickableElementIdHere");
clickElement.addEventListener("click", function () {
renderSezzle.renderModalByfunction();
});
```
### `isMobileBrowser()`
Renvoie true sur un navigateur mobile. Utilisez cet événement pour afficher ou masquer le widget à différents emplacements de la page en fonction du type d'appareil.
```javascript
document.onreadystatechange = function () {
if (renderSezzle.isMobileBrowser()) {
document.getElementById("sezzle-widget-mobile").style.display = "block";
document.getElementById("sezzle-widget").style.display = "none";
} else {
document.getElementById("sezzle-widget").style.display = "block";
document.getElementById("sezzle-widget-mobile").style.display = "none";
}
};
```
### `getElementToRender()`
Renvoie l'élément où le widget sera rendu. Créez un écouteur d'événements qui invoque cette fonction si le widget doit apparaître lorsque l'événement se produit.
```javascript
document.body.insertBefore(
renderSezzle.getElementToRender(),
document.getElementById("price").nextElementSibling
);
```
# null
Source: https://docs.sezzle.com/fr/docs/plugins/before-you-begin
1. Vous devez avoir un compte marchand Sezzle
* Veuillez visiter notre[page d'inscription](https://dashboard.sezzle.com/merchant/signup)si vous n'avez pas de compte
2. Assurez-vous de connaître les détails Sezzle suivants pour votre compte
* [ID du marchand](https://dashboard.sezzle.com/merchant/settings/business)
* [Clé API publique](https://dashboard.sezzle.com/merchant/settings/apikeys)
* [Clé API privée](https://dashboard.sezzle.com/merchant/settings/apikeys)
3. Familiarisez-vous avec le[flux de transaction](https://docs.sezzle.com/docs/guides/direct/introduction)lors d'un achat avec Sezzle
# null
Source: https://docs.sezzle.com/fr/docs/plugins/big-commerce
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web BigCommerce, permettant aux clients d'utiliser Sezzle lors du paiement.
Cette intégration est uniquement disponible avec [BigCommerce's Optimized One Page
Checkout](https://support.bigcommerce.com/s/article/Optimized-Single-Page-Checkout?language=en_US).
### Activer Sezzle comme méthode de paiement en ligne
[Obtenir l'application](https://www.bigcommerce.com/apps/sezzle/)
1. Allez à `Store Setup` > `Payments`

2. Allez à `Online Payment Methods`, trouvez `Sezzle` et cliquez sur `Set up`

3. Copiez votre Clé Publique et votre Clé Privée depuis votre [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/)
* Collez-les dans les champs correspondants
4. Sélectionnez le `Transaction Type`
Si vous sélectionnez `Authorize only`, le paiement sera seulement autorisé et
devra être capturé plus tard dans BigCommerce.
5. Sélectionnez le `Test Mode` (`No` (Recommandé) ou `Yes` pour les tests)
6. Cliquez sur `Save`
### Installer l'application Sezzle BigCommerce
1. Connectez-vous à la page d'administration de votre boutique BigCommerce
2. Dans la barre latérale gauche, cliquez sur `Apps > Marketplace`
3. Cliquez sur `BigCommerce.com/Apps`

4. Recherchez `Sezzle`

5. Cliquez sur `Sezzle`, puis cliquez sur `Get This App`

6. Cliquez sur `Install`

7. Cochez la case de conformité PCI, puis cliquez sur `Confirm` pour commencer l'installation

### Pré-configuration du Widget
1. Assurez-vous d'avoir installé l'application Sezzle dans votre boutique
2. Allez à `Apps` > `Sezzle`
3. Copiez votre ID Marchand depuis votre [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/)
* Collez-les dans les champs correspondants dans l'application Sezzle de votre administration BigCommerce
4. Cochez la case Ajouter le script du widget Sezzle
* Cela injectera le script du widget dans les pages de produits et de panier de votre boutique
5. Sauvegardez la configuration
### Valider
Effectuez un [paiement test](/fr/docs/api/test-cards#checkout-testing) pour valider que l'intégration est correctement installée.
### Dépannage
Si le test n'a pas réussi, vérifiez les points suivants :
1. Le site a activé le paiement optimisé en une page
* Allez à `Advanced Settings` > `Checkout`
2. Les clés API ont été saisies correctement
* Pour éviter les fautes de frappe ou les espaces supplémentaires, utilisez l'icône Copier dans le [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
3. Si vous avez plusieurs comptes avec Sezzle, chaque boutique a son propre ID marchand et ses propres clés API qui sont liés à l'URL de la boutique
4. La case Ajouter le script du widget Sezzle est cochée
5. Le script du widget est présent sur votre site web et reflète l'ID Marchand de votre [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
* Allez sur une page produit de votre site web
* Faites un clic droit puis sélectionnez `Inspect`
* Dans l'onglet `Elements`, recherchez `widget.sezzle`
### Intégration manuelle du thème
Si l'application Sezzle ne parvient pas à maintenir le script du widget sur les pages de produits, ou pour ajouter manuellement le script pour des pages supplémentaires, suivez les étapes suivantes :
1. Allez à `Storefront` > `Script Manager`
2. Cliquez sur le bouton `Create a Script`
3. Définissez `Name of script` sur `Sezzle Widget`
4. Définissez `Location on page` sur `Footer`
5. Définissez `Select pages` où le script sera ajouté sur `All pages`
6. Définissez `Script category` sur `Essential`
7. Définissez `Script type` sur `Script`
8. Dans la zone de contenu du script, copiez et collez le script, puis cliquez sur `Save`
Le script à insérer dans votre page web est le suivant :
#### Modèle
```javascript
```
Mettez à jour `{sezzle_merchant_uuid}` dans le modèle de script ci-dessus avec l'ID
Marchand de votre site (en supprimant les accolades), qui peut être trouvé dans le
[Sezzle Merchant
Dashboard](https://dashboard.sezzle.com/merchant/settings/business).
#### Exemple
```javascript
```
Les instructions peuvent varier légèrement en fonction de vos plugins actifs. Si le problème persiste après avoir suivi les étapes ci-dessus, recherchez d'autres fonctionnalités disponibles permettant d'ajouter un extrait de code HTML personnalisé au pied de page du site. Si aucune fonctionnalité de ce type n'est trouvée, les étapes ci-dessous peuvent être suivies en dernier recours :
1. Allez à `Storefront` > `My Themes`
2. Dans votre thème actuel, cliquez sur `Advanced` puis sélectionnez `Edit Theme Files`
3. Dans la fenêtre de confirmation, cliquez sur `Edit Theme Files`
4. Dans la liste des fichiers, allez à `templates` > `pages`, puis sélectionnez `product.html`
5. Copiez et collez le script tout en bas du fichier, puis cliquez sur `Save` et `Apply Files`
6. Répétez l'étape précédente pour le fichier `cart.html`
Pour toute assistance, contactez
[**merchantsupport@sezzle.com**](mailto:merchantsupport@sezzle.com).
### Étapes de désinstallation
1. Allez à `Apps` > `My Apps`
2. Sous l'application Sezzle, cliquez sur `Uninstall`

3. Basculez le bouton contre Sezzle sous `Store Setup` > `Payments` > `Online Payment Methods` pour désactiver Sezzle comme option de paiement
# null
Source: https://docs.sezzle.com/fr/docs/plugins/buy-it-live
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web BuyItLive, permettant aux clients d'utiliser Sezzle lors du paiement.
### Configuration de l'administration BuyItLive
1. Connectez-vous à l'administration BuyItLive de votre site web
2. Cliquez sur`Add Payment Provider`
3. Sélectionnez`Connect with Sezzle`
4. Allez à`Sezzle Payments`>`Tools`
5. Copiez votre Clé Privée et votre Clé Publique depuis votre[Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Collez-les dans les champs correspondants de la page de configuration Sezzle de votre administration BuyItLive
6. Cliquez sur`Save Settings`
7. Allez à`Cart Settings`et assurez-vous que le commutateur`Sezzle`est en position`On`activée
L'installation est terminée !
### Valider
Effectuez un[paiement test](/fr/docs/api/test-cards#checkout-testing)pour valider que l'intégration est correctement installée.
# null
Source: https://docs.sezzle.com/fr/docs/plugins/comment-sold
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web CommentSold, permettant aux clients d'utiliser Sezzle lors du paiement.
### Configuration de l'administration CommentSold
[Obtenez l'application](https://commentsold.com/admin/setup/billing)
1. Dans votre administration CommentSold, allez dans Configuration
2. Cliquez sur Passerelles de paiement
3. Copiez votre Clé privée et votre Clé publique depuis votre [Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Collez-les dans les champs correspondants de la page de configuration Sezzle de votre administration CommentSold
4. Cliquez sur Mettre à jour les clés

L'installation est terminée !
### Valider
Effectuez un [paiement test](/fr/docs/api/test-cards#checkout-testing) pour valider que l'intégration est correctement installée.
# null
Source: https://docs.sezzle.com/fr/docs/plugins/lightspeed
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Lightspeed, permettant aux clients d'utiliser Sezzle lors du paiement.
L'application Sezzle pour Lightspeed est certifiée et disponible [here](https://www.lightspeedhq.com/ecommerce/store/apps/sezzle/) dans l'App Store.
### Installer l'application Sezzle Lightspeed
1. Connectez-vous à votre back-office Lightspeed
2. Naviguez vers `Apps` > `App Store`
3. Recherchez `Sezzle` dans la barre de recherche et cliquez sur l'application Sezzle

4. Cliquez sur `Install App` dans le coin supérieur droit

5. Après une installation réussie, vous serez redirigé vers l'application Sezzle

### Configurer Sezzle
1. Accédez à l'application Sezzle en cliquant sur `Go to App` situé à `Apps` > `Purchased Apps` > `Sezzle`
2. Copiez votre Clé Publique et votre Clé Privée depuis votre [Tableau de bord Marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Collez-les dans les champs correspondants
3. Cliquez sur `link sezzle account` pour lier votre compte Sezzle à votre boutique Lightspeed
Le message `Account successfully linked` s'affiche lorsque le compte est vérifié
### Paramètres
Basculez la case à cocher `Sezzle at Checkout` pour activer (`On`) ou désactiver (`Off`) Sezzle comme option de paiement sur la page de paiement.

Basculez la case à cocher `Sezzle Widgets` pour activer (`On`) ou désactiver (`Off`) le widget Sezzle sur les pages PDP et Panier.

### Remboursement de Paiement
1. Dans votre back-office Lightspeed, allez à `Orders` > `Orders`
2. Sélectionnez la commande à rembourser
3. Cliquez sur `Add Credit Invoice`
4. Sélectionnez l'article et entrez la quantité
5. Assurez-vous que `Status` `=` `Not Paid`
6. Cliquez sur `Add`
7. L'annulation d'une commande Payée remboursera également les paiements pour les Factures Payées
**En cas de Remboursement Réussi**
* Une facture avec le statut `Not Paid` sera créée dans la section `Orders > Invoices`.
* Le Statut de la Commande sera affiché comme `Refunded` dans votre Tableau de bord Marchand Sezzle.
### Valider
Une boutique de test Lightspeed doit être utilisée pour les tests Sandbox.
Effectuez un [paiement test](/fr/docs/api/test-cards#checkout-testing) pour valider que l'intégration est correctement installée.
# null
Source: https://docs.sezzle.com/fr/docs/plugins/magento-2
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Magento 2, permettant aux clients d'utiliser Sezzle lors du paiement.
L'extension Magento 2 de Sezzle est certifiée dans le [marketplace](https://commercemarketplace.adobe.com/sezzle-sezzlepay.html) et peut être téléchargée depuis GitHub.
## Installer l'extension Sezzle Magento 2
Suivez les instructions [ici](https://github.com/sezzle/sezzle-magento2/tree/production) pour installer l'extension Sezzle dans votre configuration Magento
## Configurer Sezzle
1. Connectez-vous à votre site d'administration Magento
2. Allez à `Stores` > `Configuration` > `Sales` > `Payment Methods` > `Additional Payment Solutions`
3. À côté de `Sezzle`, cliquez sur `Configure`
4. Cliquez sur `I've already setup Sezzle, I want to edit my settings`
Si vous ne vous êtes pas encore inscrit à Sezzle, vous devez [le faire maintenant](https://dashboard.sezzle.com/merchant/signup) avant de continuer
### Général
1. Définissez `Enabled` sur `Yes`
2. Entrez la Clé Publique et la Clé Privée, comme trouvées dans votre [Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)
3. Sélectionnez le `Payment Mode: Live`
* Voir [Test Sandbox](#sandbox-testing) pour plus d'informations
4. Définissez `Min Checkout Amount` pour restreindre la méthode de paiement Sezzle en dessous du montant donné
5. Sélectionnez le `Payment Action`
* `Authorize Only` n'autorisera que le paiement et nécessite que le paiement soit capturé ultérieurement
* Voir [Capture du paiement](#capture-payment) pour les instructions de capture manuelle
* `Authorize and Capture` effectuera les deux en une seule étape
* Voir [Autorisation uniquement vs Autorisation et capture](/fr/docs/guides/auth-and-capture) pour plus de détails
6. Sélectionnez `Enable Customer Tokenization`
* `Yes` invite le client à autoriser la tokenisation de son compte
* Voir [Tokenisation du client](#customer-tokenization-details) pour plus de détails
7. Définissez `Sort Order` pour gérer la position de Sezzle dans la liste des options de paiement lors du paiement

### Paramètres In-Context
La solution In-Context ouvre le traitement des paiements Sezzle dans un iframe ou une fenêtre pop-up. Lorsqu'elle est désactivée, les acheteurs seront redirigés vers Sezzle pour le traitement des paiements, puis renvoyés sur le site du marchand une fois terminé.
* Définir `Enable In-Context Solution` à `Yes` pour activer le paiement In-Context.
* Définir `In-Context Checkout Mode`
* `IFrame` ouvrira Sezzle dans une fenêtre modale sur le site du marchand
* `Pop Up` ouvrira Sezzle dans une nouvelle fenêtre

### Paramètres du rapport de règlement
1. Définir `Enable Settlement Reports` à `Yes` pour activer le tableau de bord des rapports de règlement
2. Définir `Range` à une valeur basée sur laquelle vous souhaitez récupérer les rapports de règlement
3. Définir `Enable Automatic Syncing` pour récupérer les rapports de règlement de manière asynchrone
Cela nécessite que `cron` soit activé
4. Définir `Schedule` et `Time of Day` pour que la synchronisation automatique s'exécute

### Paramètres du widget
1. Définir `Enable Widget in PDP` à `Yes` pour afficher les messages sur site de Sezzle après le prix du produit sur la page de détails du produit
2. Définir `Enable Widget in Cart Page` à `Yes` pour afficher les messages sur site de Sezzle après le total du panier sur la page du panier
3. Définir `Enable Installment Widget in Checkout Page` à `Yes` pour afficher le widget du plan de paiement Sezzle sous l'option de paiement Sezzle sur la page de paiement
4. Définir `Path to Price Element` pour définir où sur la page de paiement la valeur textuelle du total de la commande sera détectée pour le widget de paiement échelonné
5. Enregistrez la configuration et videz le cache



### Support du widget
Si les widgets n'apparaissent pas sur la PDP et/ou la page du panier après avoir activé le `Widget Settings`, cliquez sur le bouton `Request` dans cette section pour contacter l'équipe Widget de Sezzle pour obtenir de l'aide.

### Paramètres du développeur
1. Définissez Activer le suivi des logs sur Oui pour tracer le processus de paiement Sezzle
2. Définissez Envoyer les logs à Sezzle sur Oui pour envoyer automatiquement les logs à Sezzle
Cela nécessite que `cron` soit activé
3. Vous pouvez télécharger les derniers logs à tout moment en cliquant sur Logs du développeur : Log Sezzle
4. Enregistrez la configuration et videz le cache

### Vider le cache
1. Naviguez vers `System` > `Cache Management`
2. Cliquez sur `Flush Cache Storage`
* Votre boutique est maintenant prête à accepter les paiements via Sezzle
## Gestion des commandes Sezzle
### Test en environnement sandbox
1. Sur votre site de développement/staging, allez dans `Stores` > `Configuration` > `Sales` > `Payment Methods` > `Additional Payment Solutions`
2. À côté de `Sezzle`, cliquez sur `Configure`
3. Sous `General`, mettez à jour `Payment Mode to Sandbox`
4. Remplacez la Clé Publique et la Clé Privée par les clés API de votre [Tableau de bord Sandbox du marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)
5. Cliquez sur `Save Config`
6. Sur votre site web, ajoutez un article au panier, puis passez à la caisse et sélectionnez Sezzle comme mode de paiement
1. Si le client n'est pas tokenisé, cliquez sur `Continue to Sezzle`
2. Si le client est tokenisé, cliquez sur `Place Order`
3. Si le paiement est In-Context, cliquez sur `Pay with Sezzle`
7. Connectez-vous à Sezzle ou inscrivez-vous pour continuer
8. Entrez les détails de paiement en utilisant [les données de test](https://docs.sezzle.com/docs/api/core/test-data/#checkout-testing), puis passez à la page finale
9. Cochez la case `Approve {Website Name}` pour traiter les paiements depuis votre compte Sezzle pour les transactions futures
Vous pouvez révoquer cette autorisation à tout moment dans votre tableau de bord Sezzle pour tokeniser votre compte
10. Si votre compte est déjà tokenisé, la commande sera passée sans redirection
11. Une fois le paiement effectué chez Sezzle, vous serez dirigé vers la page de paiement réussi de votre site
Le test en environnement sandbox est terminé. Vous pouvez vous connecter à votre tableau de bord Sandbox du marchand Sezzle pour voir la commande de test que vous venez de passer.
### Capture du paiement
* La capture sera effectuée instantanément depuis l'extension après que la commande soit créée et validée dans Magento.
* Vous devrez capturer le paiement manuellement depuis l'administration Magento en suivant ces étapes :
1. 1. Naviguez vers `Sales` > `Orders`, trouvez la commande à capturer, et cliquez sur `View`
2. 2. Dans le coin supérieur droit du formulaire, cliquez sur `Invoice`
3. 3. Vérifiez les détails de la commande, puis cliquez sur `Submit Invoice`
Cela capturera automatiquement le paiement dans Sezzle
### Remboursement du paiement
1. Naviguez vers `Sales` > `Orders`, trouvez la commande à rembourser, et cliquez sur `View`
2. Dans le coin supérieur droit du formulaire, cliquez sur `Credit Memo` puis `OK` pour confirmer votre action
3. Vérifiez les détails du remboursement, puis cliquez sur `Refund Offline`
Cela mettra automatiquement à jour le statut de la commande Sezzle dans le tableau de bord du marchand Sezzle à Remboursé ou Partiellement remboursé selon le cas
### Libération du paiement
1. Naviguez vers `Sales` > `Orders`, trouvez la commande à libérer, et cliquez sur `View`
2. Dans le coin supérieur droit du formulaire, cliquez sur `Cancel` puis `OK` pour confirmer votre action
L'annulation était auparavant utilisée, mais sera dépréciée dans les versions futures
Cela mettra automatiquement à jour le statut de la commande Sezzle dans le tableau de bord du marchand Sezzle à Supprimé en raison de la non-capture du paiement avant expiration, indiquant que le paiement a été entièrement libéré. Magento ne prend pas en charge les libérations partielles.
### Vérification de la commande dans l'administration Magento
1. Connectez-vous à l'administration Magento
2. Naviguez vers `Sales` > `Orders`, trouvez la commande à vérifier, et cliquez sur `View`
| Statut de la commande | Total payé | Description |
| :--------------------- | :------------------------------ | :----------------------------------------------- |
| En cours de traitement | Total général | Le paiement a été capturé avec succès par Sezzle |
| En attente | N'est pas égal au Total général | Le paiement est autorisé mais pas encore capturé |
| Fermé | N/A | Le paiement a été remboursé |
| Annulé | N/A | Le paiement a été libéré |
### Vérification de la commande dans le tableau de bord du marchand Sezzle
1. Connectez-vous au tableau de bord du marchand Sezzle
2. Naviguez vers `Orders`, puis trouvez et cliquez sur la commande à vérifier
| Statut de la commande | Description |
| :---------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------- |
| Approuvé | Le paiement a été capturé avec succès par Sezzle |
| Autorisé, non capturé | Le paiement a été autorisé mais pas encore capturé |
| Remboursé | Le paiement a été remboursé |
| Supprimé en raison de la non-capture du paiement avant expiration | Soit le paiement n'a pas été capturé avant l'expiration de l'autorisation, soit le paiement a été libéré |
### Détails de tokenisation du client
1. Naviguer vers `Customers` > `All Customers`
* Sélectionnez le client pour voir les détails de tokenisation
2. Si le client est tokenisé, l'onglet Sezzle apparaîtra
* Le `Status`, `Token`, et `Token Expiration` apparaîtront sur l'onglet

### Rapports de règlement
1. Naviguer vers `Reports` > `Sales` > `Sezzle Settlement`
* Une liste des rapports de règlement récents sera affichée
2. Pour effectuer une synchronisation rapide, entrez la date de début et de fin et cliquez sur `Sync`
3. Pour voir les détails d'un rapport, dans la colonne `Action`, cliquez sur `View`
4. Pour télécharger un rapport, dans la colonne `Action`, cliquez sur `Download`
* Vous pouvez télécharger le rapport de règlement au format `CSV` ou `Excel`

## Dépannage
Si le test n'a pas réussi, vérifiez les points suivants :
1. L'extension Sezzle-Magento2 est la dernière version
2. L'extension Sezzle est activée
1. Allez à `Stores` > `Configuration` > `Sales` > `Payment Methods` > `Additional Payment Solutions`
2. À côté de `Sezzle`, cliquez sur `Configure`
3. Assurez-vous que `Enabled` est réglé sur `Yes`
3. Les clés API ont été saisies correctement et pour le bon environnement
Il est recommandé d'utiliser l'icône Copier dans le [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys) pour éviter les fautes de frappe ou les espaces supplémentaires
4. Le cache de stockage a été vidé
5. Le script du widget est présent sur votre site web et reflète l'UUID du marchand de votre [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
1. Allez sur une page de produit de votre site web
2. Faites un clic droit puis sélectionnez `Inspect`
3. Dans l'onglet `Elements`, recherchez `widget.sezzle`
* Si toutes les vérifications ci-dessus ont échoué, le marchand peut transmettre le `/var/log/sezzlepay.log` à l'équipe Sezzle à [**merchantsupport@sezzle.com**](mailto:merchantsupport@sezzle.com)
* Il est toujours recommandé d'envoyer le `system.log` et `exception.log `pour un meilleur traçage des problèmes
# null
Source: https://docs.sezzle.com/fr/docs/plugins/mojo
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Mojo, permettant aux clients d'utiliser Sezzle lors du paiement.
### Ajouter un mode de paiement
1. Connectez-vous à votre compte administrateur Mojo et accédez à l'onglet Intégrations
2. Sélectionnez`Payment Systems`dans le menu déroulant et cliquez sur`Sezzle`dans la fenêtre suivante
3. Basculez`Enable`sur`ON`
4. Basculez`Test Mode`sur`OFF`sauf si vous testez votre intégration dans Sandbox
5. Entrez vos clés publique et privée Sezzle dans les champs appropriés

6. Assurez-vous de la cohérence entre les offres de votre page web et les options de paiement lors du paiement final
* Accédez à vos Paramètres du site pour activer ou désactiver les fonctionnalités que vous souhaitez activer avec Sezzle
Le commutateur`Hide pay-over-time solutions`sera automatiquement masqué pour les clients qui choisissent l'option de commande multi-paiements.
7. Une fois satisfait de votre flux de transaction, cliquez sur le bouton bleu`Save Changes`
* Mojo utilisera la tokenisation client pour les ventes incitatives
* Voir[tokenisation client](http://localhost:3000/docs/api/tokenization/intro)ou contactez Mojo pour plus d'informations
### Valider
Effectuez un[paiement test](/fr/docs/api/test-cards#checkout-testing)pour valider que l'intégration est correctement installée.
# null
Source: https://docs.sezzle.com/fr/docs/plugins/nopcommerce
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web NopCommerce, permettant aux clients d'utiliser Sezzle lors du paiement.
### Installer l'extension Sezzle NopCommerce
Allez sur [https://www.nopcommerce.com/sezzle](https://www.nopcommerce.com/sezzle) et cliquez sur`Get Extension`.
### Configuration de l'administrateur
1. Allez à `Configuration` > `Local Plugins`
2. Cliquez sur `Upload Plugin or Theme` et sélectionnez le fichier zip téléchargé selon les instructions données
3. Une fois l'extension téléchargée, cliquez sur `Install`
4. Sous `Configuration`, allez à `Payment Methods` puis cliquez sur `Configure` sous `Sezzle`

5. Cliquez sur `Edit` dans la liste des méthodes de paiement
6. Copiez votre ID de marchand depuis votre [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
* Collez-le dans le champ correspondant de la page de configuration Sezzle de votre admin NopCommerce
7. Copiez votre clé publique et votre clé privée depuis votre [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/business)
* Collez-les dans les champs correspondants de la page de configuration Sezzle de votre admin NopCommerce
8. Réglez `Transaction Mode` sur `Authorize` ou `Authorize and Capture`
Voir [Authorize Only vs Authorize and Capture](/fr/docs/guides/auth-and-capture) pour plus de détails sur la différence entre les deux choix.
9. Enregistrez la configuration

10. Pour restreindre l'utilisation de Sezzle en fonction du pays de facturation, allez à `Configuration` > `Payment Restrictions`
11. Choisissez le pays que vous voulez restreindre pour Sezzle
Sezzle est actuellement disponible pour les clients de `The United States` et `Canada`.
Vous pouvez souhaiter restreindre tous les pays où Sezzle n'est pas disponible.

12. L'intégration est terminée
### Valider
Effectuez un [test de paiement](/fr/docs/api/test-cards#checkout-testing) pour valider que l'intégration est correctement installée.
# null
Source: https://docs.sezzle.com/fr/docs/plugins/open-cart
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Open Cart, permettant aux clients d'utiliser Sezzle lors du paiement.
Sezzle prend en charge les versions Opencart 3.0.3.7.
### Installation
1. Téléchargez le module Sezzle depuis le Marketplace Opencart
2. Dans votre back-office Opencart, allez à`Extensions`>`Installer`
3. Sélectionnez`Upload`et sélectionnez le fichier .zip que vous avez téléchargé
4. Allez à`Extensions`>`Payments`
5. Trouvez`Sezzle`, et sélectionnez`Enable Module`
* Le plugin est prêt à être configuré
Pour apprendre comment installer le plugin après l'avoir téléchargé, regardez le[tutoriel vidéo officiel d'Opencart](https://www.youtube.com/watch?v=mXhRSXw_ycE\&t=3s)
### Configuration
1. Dans votre admin Opencart, allez à`Extensions`>`Payments`
2. Dans la section`Payments`, trouvez`Sezzle`et sélectionnez`Configure`
3. Remplissez les champs suivants
| Champ | Valeur |
| ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Statut | Activer ou Désactiver |
| Clé Publique | Clé Publique du Tableau de Bord Marchand Sezzle |
| Clé Privée | Clé Privée du Tableau de Bord Marchand Sezzle |
| Mode Test | Oui ou Non pour les Tests |
| Méthode de Transaction | Utilisez*Autoriser et Capturer*pour capturer immédiatement le paiement lorsqu'un paiement Sezzle est terminé et*Autoriser Seulement*pour autoriser le paiement lorsqu'un paiement Sezzle est terminé.Cela nécessite une demande de capture ultérieure depuis le back-office pour finaliser le paiement. Voir[Autoriser Seulement vs Autoriser et Capturer](/fr/docs/guides/auth-and-capture)pour plus de détails sur la différence entre les deux choix. |
| Autoriser la Tokenisation | Activez pour offrir aux acheteurs récurrents une expérience de paiement plus rapide en contournant le paiement Sezzle. |
| Activer le Widget dans PDP | Activez pour afficher le widget Sezzle sur le PDP |
| Activer le Widget dans la Page du Panier | Activez pour afficher le widget Sezzle sur la Page du Panier |
| Ordre de Tri | Activez pour trier la position de l'option de paiement Sezzle dans la page de paiement |
### Capture du Paiement
* Le paiement sera automatiquement capturé pendant le processus de paiement.
1. 1. Dans votre back-office Opencart, allez à`Sales`>`Orders`
2. 2. Sélectionnez la commande pour laquelle vous voulez capturer le paiement
3. 3. Allez à l'onglet`Sezzle`
4. 4. Entrez le montant de la capture
5. 5. Cliquez sur`Capture Payment`
### Remboursement du Paiement
1. Dans votre back-office Opencart, allez à`Sales`>`Orders`
2. Sélectionnez la commande pour laquelle vous voulez rembourser le paiement
3. Allez à l'onglet`Sezzle`
4. Entrez le montant du remboursement
5. Cliquez sur`Refund Payment`
### Libération du Paiement
1. Dans votre back-office Opencart, allez à`Sales`>`Orders`
2. Sélectionnez la commande pour laquelle vous voulez libérer le paiement
3. Allez à l'onglet`Sezzle`
4. Entrez le montant de la libération
5. Cliquez sur`Release Payment`
### Mise à niveau du module
Si vous utilisez une ancienne version du module Sezzle Opencart et que vous souhaitez utiliser la dernière version, suivez ces étapes :
1. Désinstallez le module Sezzle existant
2. Installez la dernière version du plugin comme décrit dans[Installation](https://docs.sezzle.com/docs/plugins/open-cart#installation)
3. Configurez la dernière version du plugin comme décrit dans[Configuration](https://docs.sezzle.com/docs/plugins/open-cart#configuration)
# null
Source: https://docs.sezzle.com/fr/docs/plugins/prestashop
Le module Sezzle pour PrestaShop peut être[téléchargé depuis GitHub](https://github.com/sezzle/sezzle-prestashop).
### Installation
1. Dans votre back-office PrestaShop, allez à`Modules` > `Module Manager`
2. Sélectionnez`Upload a module`, puis sélectionnez le fichier .zip que vous avez téléchargé sur votre ordinateur
3. Allez à`Payment` > `Payment methods`
4. Trouvez`Sezzle`, et sélectionnez`Enable Module`
* Le plugin est maintenant prêt à être configuré
Pour apprendre comment installer le plugin après l'avoir téléchargé, regardez le[tutoriel vidéo officiel PrestaShop](https://www.youtube.com/watch?v=nG3VSMQ593s)
### Configuration
1. Dans votre back-office PrestaShop, allez à`Modules` > `Module Manager`
2. Dans la section`Payment`, trouvez`Sezzle` et sélectionnez`Configure`
* Remplissez les champs suivants :
| Champ | Valeur |
| :------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Mode Live | Activer ou Désactiver pour les tests |
| ID Marchand | ID Marchand que vous avez obtenu du[Tableau de bord marchand](https://dashboard.sezzle.com/merchant/settings/business) |
| Clé Publique | Clé Publique que vous avez obtenue du[Tableau de bord marchand](https://dashboard.sezzle.com/merchant/settings/apikeys) |
| Clé Privée | Clé Privée que vous avez obtenue du[Tableau de bord marchand](https://dashboard.sezzle.com/merchant/settings/apikeys) |
| Action de Paiement | `Authorize and Capture` pour la capture instantanée et`Authorize Only` pour juste l'autorisation (doit être capturé manuellement depuis le back-office) Voir[Autoriser seulement vs Autoriser et Capturer](/fr/docs/guides/auth-and-capture) pour plus de détails sur la différence entre les deux choix |
| Autoriser la Tokenisation Client | Activer pour offrir aux clients récurrents une expérience de paiement plus rapide en sauvegardant leurs détails de carte |
| Activer le Widget | Activer pour afficher le widget Sezzle sur la page produit et la page panier |

### Capture de Paiement
* Le paiement sera automatiquement capturé pendant le processus de paiement.
1. 1. Dans votre back-office Opencart, allez à`Orders` > `Orders`
2. 2. Sélectionnez la commande pour laquelle vous voulez capturer le paiement
3. 3. Dans la section`Payment` juste en dessous, entrez les informations ci-dessous et cliquez sur`Add`
4. * Date
5. * Méthode de paiement
6. * Montant
7. 4. Changez le`Order Status` à`Payment Accepted` si la capture est réussie

### Remboursement de Paiement
1. Dans votre back-office PrestaShop, allez à Commandes > Commandes
2. Sélectionnez la commande pour laquelle vous voulez rembourser le paiement
3. Cliquez sur Remboursement partiel, entrez le montant et cliquez sur Remboursement partiel juste en dessous
4. Pour un remboursement complet, vous devez remplir tous les montants liés à la commande dans les endroits respectifs
5. Changez le Statut de la Commande à Remboursé seulement si le remboursement complet est réussi

### Libération de Paiement
1. Dans votre back-office PrestaShop, allez à`Orders` > `Orders`
2. Sélectionnez la commande pour laquelle vous voulez rembourser le paiement
3. Changez le`Order status` à`Cancelled` et cliquez sur`Update Status`

### Mise à niveau du module
Si vous avez un module Sezzle PrestaShop existant installé et que vous souhaitez mettre à niveau vers une nouvelle version, procédez comme suit :
1. Désinstallez le module Sezzle existant
2. Dans le menu déroulant Mise à niveau, sélectionnez`Uninstall`
Supprimez manuellement le dossier`/sezzle` du dossier`/modules` (s'il n'a pas été supprimé lors de l'action de désinstallation)
3. [Installez](https://docs.sezzle.com/docs/plugins/prestashop#installation) la dernière version du plugin
4. [Configurez](https://docs.sezzle.com/docs/plugins/prestashop#configuration) la dernière version du plugin
### Réinstallation
Lorsque vous réinstallez le plugin, celui-ci prend en charge la plupart de ses configurations et fonctions, à l'exception des éléments listés ci-dessous. Nous vous recommandons de suivre les étapes ici pour vous assurer que lorsque vous réinstallez le plugin, il ne reprendra pas les paramètres d'une installation précédente.
**Statut de commande**
* Le plugin conserve le`Awaiting Sezzle Payment`statut de commande car les commandes existantes pourraient encore les utiliser. Si vous souhaitez également supprimer ces statuts, assurez-vous d'abord qu'ils ne sont plus utilisés.
* Pour vérifier si le statut est utilisé :
1. Allez à la`Orders`page dans votre panneau d'administration Prestashop
2. Filtrez les commandes pour le`Awaiting Sezzle Payment`statut de commande
3. S'il y en a, déplacez-les vers un autre statut que vous souhaitez utiliser
* Lorsqu'il n'y a plus de commandes utilisant ce statut, vous pouvez le supprimer de votre liste de statuts de commande
**Configurations**
Le plugin conserve les`AWAITING_SEZZLE_PAYMENT`champs de configuration dans votre base de données au cas où il y aurait encore des commandes dans votre système avec les statuts correspondants. Si vous avez déjà supprimé le statut, vous pouvez également supprimer ces configurations restantes.
# null
Source: https://docs.sezzle.com/fr/docs/plugins/salesforce-commerce-cloud
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Salesforce Commerce Cloud, permettant aux clients d'utiliser Sezzle lors du paiement. Cette intégration prend en charge les sites construits avec SiteGenesis et Reference Architecture.
Voir[Autorisation seulement vs Autorisation et Capture](/fr/docs/guides/auth-and-capture)pour plus de détails sur la différence entre les deux choix.
### Installation
* Obtenez la[Sezzle Cartridge for B2C Commerce](https://appexchange.salesforce.com/appxListingDetail?listingId=a0N4V00000JhSz3UAF\&tab=e)sur le Salesforce AppExchange ou directement depuis[GitHub](https://github.com/sezzle/sezzle-commerce-cloud)
* Les instructions d'installation sont incluses dans la[documentation](https://github.com/sezzle/sezzle-commerce-cloud/tree/production/documentation)
* Si vous avez besoin d'aide supplémentaire avec notre cartouche Salesforce, veuillez contacter notre équipe en[soumettant une demande de support](https://merchant-help.sezzle.com/hc/en-us/requests/new)
# null
Source: https://docs.sezzle.com/fr/docs/plugins/shift4shop
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Shift4Shop, permettant aux clients d'utiliser Sezzle lors du paiement.
Seuls les marchands 3D Cart legacy peuvent utiliser Sezzle pour le moment.
### Installer l'extension Sezzle Shift4Shop
1. Connectez-vous à l'administration Shift4Shop de votre site web
2. Obtenez l'[app](https://apps.shift4shop.com/sezzle)
3. Copiez et collez l'URL de votre boutique dans la zone de saisie, puis cliquez sur `Proceed`

4. Cochez la case de conformité PCI, puis cliquez sur `Acknowledge and Authorize the App` pour commencer l'installation
### Configuration de l'administration
1. Dans votre administration Shift4Shop, allez dans Paramètres > Paiement
2. Cliquez sur Sélectionner les méthodes de paiement

3. Activez le `Sezzle` commutateur pour `On`
4. Copiez votre Clé Publique depuis votre [Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Collez-la dans le champ correspondant sur la page de configuration Sezzle de votre administration Shift4Shop
5. À côté de Clé Privée, cliquez sur `Change`
6. Copiez votre Clé Privée depuis votre [Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Collez-la dans le champ correspondant sur la page de configuration Sezzle de votre administration Shift4Shop
7. Cliquez sur `Save`

8. Pour restreindre l'utilisation de Sezzle par pays, cliquez sur le `Exclude List` lien hypertexte sous le `Sezzle` commutateur
9. Cliquez sur `Add Location`
10. Sélectionnez le pays souhaité, puis cliquez sur `Add`

L'installation est terminée !
### Valider
Effectuez un [paiement test](/fr/docs/api/test-cards#checkout-testing) pour valider que l'intégration est correctement installée.
### Dépannage
Si le test n'a pas réussi, vérifiez les points suivants :
1. L'extension Sezzle Shift4Shop est la version la plus récente
2. La méthode de paiement Sezzle est activée
3. [Les clés API](https://dashboard.sezzle.com/merchant/settings/apikeys) ont été saisies correctement
Il est recommandé d'utiliser l'icône Copier dans le [Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys) pour éviter les fautes de frappe ou les espaces supplémentaires
4. Si vous avez plusieurs comptes chez Sezzle, l'ID marchand et les clés API sont liés à une seule URL
5. Le script du widget est présent sur votre site web et reflète l'ID marchand de votre [Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/business)
1. Allez sur une page produit de votre site web
2. Faites un clic droit puis sélectionnez `Inspect`
3. Dans l'onglet `Elements`, recherchez `widget.sezzle`
### Intégration manuelle du thème
Si l'application Shift4Shop ne parvient pas à maintenir le script du widget sur les pages produits, ou pour ajouter manuellement le script pour des pages supplémentaires, suivez ces étapes :
1. Depuis votre administration Shift4Shop, allez dans `Settings` > `Design` > `Themes & Styles`
2. Dans votre thème actuel, cliquez sur le bouton intitulé `More` puis sélectionnez `Edit Template (HTML)`
3. Trouvez la copie de votre thème sous `Go to Folder`
4. Cliquez sur l'icône d'engrenage à côté du fichier `product_items.html`, puis cliquez sur `Edit`
5. Lorsque le tableau de bord vous demande si vous voulez modifier les fichiers de votre thème, cliquez sur le bouton `Edit Theme Files`
6. Dans la zone de texte du code source, copiez et collez le script tout au début du fichier
7. Cliquez sur `Save`
### Insérer le script dans la page web
Template:
```
```
Mettez à jour `{sezzle_merchant_uuid}` dans le modèle de script ci-dessus pour refléter l'ID marchand de votre site (en supprimant les accolades), que vous pouvez trouver dans le [Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/business).
Example:
```
```
* Les instructions peuvent varier légèrement en fonction de vos plugins actifs.
* Pour obtenir de l'aide sur la configuration du widget, cliquez sur `Request Addition of Widgets` dans l'étape du widget de votre [Liste de contrôle de configuration du Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/checklist).
### Étapes de désinstallation
1. Allez dans `Settings` > `Payment`
2. Cliquez sur `Select Payment Methods`
3. Sous l'application Sezzle, cliquez sur l'icône d'engrenage puis cliquez sur `Delete`
# null
Source: https://docs.sezzle.com/fr/docs/plugins/shopify-payments
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Shopify, permettant aux clients d'utiliser Sezzle lors du paiement.
### Installer l'application Sezzle Payments
1. Connectez-vous à l'administration Shopify de votre site web
2. Installez l'[application Sezzle Payments](https://apps.shopify.com/sezzle-payments)
1. Allez dans`Settings`>`Payments`
2. Sous`Supported Payment Methods`, cliquez sur`Add Payment Method`
3. Recherchez`Sezzle`
4. Cliquez sur le résultat dans le menu déroulant, puis cliquez sur`Sezzle Payments`
5. Cliquez sur`Manage Account`
6. Cliquez sur`Install`
3. Entrez vos clés API publiques et privées Sezzle de production
* Pour la plupart des marchands, nous sommes en mesure de pré-remplir les clés API publiques et privées en fonction de la boutique Shopify
* Si nous ne pouvons pas identifier de manière unique le marchand en fonction de la boutique Shopify, vous devrez remplir les clés
4. Cliquez sur`Save`pour vérifier votre compte Sezzle
* Vous serez redirigé vers la page des paramètres de paiement, où vous devrez activer Sezzle Payments pour votre boutique
5. Cliquez sur`Activate`
6. Vérifiez que Sezzle est disponible comme méthode de paiement pour votre boutique

Vous devriez voir`Sezzle Payments`installé dans votre`Settings`>`Payments`
Sans activer Sezzle Payments, Sezzle n'apparaîtra pas dans le paiement,
et le processus d'installation n'est pas terminé. Vérifiez que cette étape a été
effectuée.

### Valider
Pour les tests Sandbox, faites cette étape en premier
1. Naviguez vers`Settings`>`Payments`>`Sezzle Payments`
2. Cliquez sur`Manage`, cochez`Enable test mode`, et cliquez sur`Save`
3. Cliquez sur le bouton`Manage`dans Sezzle Payments, entrez vos clés API sandbox dans l'onglet de test
4. Cliquez sur`Update settings`
Pour les tests en direct, faites cette étape en premier
1. Dans la page de configuration Sezzle de votre administration Shopify, entrez les clés API de votre[Tableau de bord du marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)
2. Décochez la case`Enable Test Mode`
3. Enregistrez la configuration
Effectuez un[paiement test](/fr/docs/api/test-cards#checkout-testing)pour valider que l'intégration est correctement installée.
### Ajout de la vignette Sezzle au pied de page des méthodes de paiement acceptées
Le widget de pied de page "Méthodes de paiement acceptées" de Shopify ne prend pas en charge les applications de paiement tierces par défaut. Pour afficher Sezzle dans cette section, suivez les[instructions fournies par Shopify](https://help.shopify.com/en/manual/online-store/themes/themes-by-shopify/vintage-themes/customizing-vintage-themes/add-credit-card-icons), en ajoutant`'sezzle'`à la liste.
### Dépannage
Si le test n'a pas réussi, examinez les points suivants :
**L'extension Sezzle Payments Shopify est la version la plus à jour**
* Allez à`Apps` > `Sezzle Payments`, puis cliquez sur`About`
* S'il y a une option pour mettre à niveau, faites-le maintenant
**La passerelle Sezzle est activée**
* Allez à`Settings` > `Payment Providers` et assurez-vous que "Sezzle est actif" est listé sous la section`Alternative Payment Methods`
**Les clés API ont été saisies correctement**
* Utilisez l'icône Copier dans le Tableau de bord marchand Sezzle pour éviter les fautes de frappe ou les espaces supplémentaires
* Si vous avez plusieurs comptes avec Sezzle, l'ID marchand et les clés API sont liés à une seule URL
### Désinstallez l'application Sezzle Payments
1. Allez à`Apps`
2. Trouvez`Sezzle Payments` et cliquez sur`Delete`

### FAQs
Sezzle s'aligne sur vos paramètres`Payment Capture` Shopify. S'ils sont réglés sur`Manual`, vous devez capturer manuellement les paiements pour les commandes Sezzle. Les périodes d'autorisation diffèrent selon le marchand, alors vérifiez l'expiration dans le Tableau de bord marchand Sezzle sous[Settings > eCommerce](https://dashboard.sezzle.com/merchant/settings/ecommerce) et ajustez si nécessaire.
Installez en utilisant un navigateur en mode incognito. Allez à`https://your-store.myshopify.com/admin/settings/payments/alternative-providers/1057901`, en remplaçant`your-store.myshopify.com` par l'URL de votre boutique. Connectez-vous et suivez les étapes pour terminer l'installation. Pour une autre boutique, fermez et démarrez une nouvelle session en mode incognito.
Dans Shopify, ouvrez la commande et sélectionnez`Information from the gateway`. L'ID de paiement correspondra à l'ID de référence dans le Tableau de bord marchand Sezzle.


Vous pouvez également rechercher dans l'administration Shopify en utilisant`receipt.payment_id:`.

Non, Sezzle n'a pas les autorisations pour voir ou modifier l'inventaire Shopify, donc cette fonctionnalité n'est pas prise en charge avec la nouvelle application de paiement.
Oui, les remboursements pour les commandes via l'ancienne passerelle peuvent être traités normalement à partir de la page Commandes de Shopify.
# null
Source: https://docs.sezzle.com/fr/docs/plugins/shopify-widgets
Shopify a désactivé l'ancien `Sezzle` widget d'application privée/non publiée. Si vous utilisez actuellement `Sezzle` cette application, veuillez passer à `Sezzle Widget` l'application publique maintenant.
## Objectif
Augmentez le panier moyen et les conversions en promouvant Sezzle sur votre vitrine. Installez facilement des éléments sur les pages de produits et de panier avec l'application Sezzle Widget.
## Prérequis
1. Vous devez avoir un compte marchand Sezzle
* Veuillez visiter notre [page d'inscription](https://dashboard.sezzle.com/merchant/signup) si vous n'avez pas de compte
2. [Installer et configurer](https://docs.sezzle.com/docs/plugins/shopify-payments/) l'application Sezzle Payments
## Mise en route
1. Connectez-vous à l'administration Shopify de votre site web
2. Installez l'[application Sezzle Widget](https://apps.shopify.com/sezzle-widget)
* Alternativement, cliquez sur le `Get the Widgets App` bouton sous l'`Add Sezzle to your product and cart pages` étape de la liste de contrôle de configuration du tableau de bord marchand Sezzle
3. Cliquez sur `Install`

4. Dans l'application Sezzle Widget, entrez votre clé API publique et cliquez sur `Link Sezzle Account`
* Pour la plupart des marchands, nous sommes en mesure de pré-remplir la clé API publique basée sur l'URL de la boutique Shopify
* Pour entrer la clé API manuellement, copiez-la depuis la page des clés API dans les [Paramètres du tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)

## Installation
Veuillez sélectionner UNE des méthodes d'installation suivantes :
[Aller à la section](#installation-wizard)
[Aller à la section](#installing-as-embed-blocks-manual)
[Aller à la section](#installing-as-app-blocks)
### Assistant d'installation
1. Sélectionnez le thème que vous souhaitez modifier, puis cliquez sur `Next`
Ce champ n'est pas par défaut votre thème en direct - vous devez faire une sélection

2. Sélectionnez l'élément que vous souhaitez installer, puis cliquez sur `Next`

3. Sélectionnez la page sur laquelle vous souhaitez installer, puis cliquez sur `Finish`

4. Cliquez sur le `Activate` bouton
Vous devez cliquer sur Activer pour que les changements prennent effet
5. [Personnalisez](#customizations) comme souhaité, puis cliquez sur `Save`
### Installation en tant que blocs intégrés (manuel)
Si vous n'êtes pas déjà dans l'application, vous pouvez alternativement activer les produits Sezzle directement depuis la fenêtre de personnalisation de votre thème.
1. Dans l'administration Shopify, allez dans `Sales Channels` puis `Online Store`
2. Sous `Themes`, cliquez sur `Customize` pour le thème que vous souhaitez modifier

3. Dans le coin supérieur gauche, cliquez sur la troisième icône `App Embeds`
4. Recherchez Sezzle et activez le(s) produit(s) que vous souhaitez installer
* [Personnalisez](#customizations) comme souhaité et cliquez sur `Save`

### Installation en tant que blocs d'application
Les blocs d'application permettent aux marchands de contrôler le placement des produits. Compatible uniquement avec les thèmes 2.0.
1. Dans `Shopify Admin`, allez dans `Sales Channels` puis `Online Store`
2. Sous `Themes`, cliquez sur `Customize` pour le thème que vous souhaitez modifier

3. Dans la barre d'outils supérieure, assurez-vous que la troisième icône `Activate Inspector` est activée
#### Installation du bloc d'application Widget sur la page produit
1. Naviguez vers une page produit
2. Survolez la zone où vous souhaitez afficher le widget
3. Si des blocs d'application peuvent être placés là, `+` ou `Add block` apparaîtra. Cliquez, puis sélectionnez `Sezzle Widget` sous l'onglet `Apps`
* Alternativement, ouvrez l'onglet `Sections` et cliquez sur `Add Block`
* Sous l'onglet `Apps`, sélectionnez `Sezzle Widget`
* Faites glisser et déposez le bloc à l'emplacement souhaité dans le menu des contenus

4. [Personnalisez](#customizations) comme souhaité, puis cliquez sur `Save`
#### Installation du bloc d'application Widget et du bouton de paiement sur la page du panier
1. Ajoutez un produit au panier
2. Naviguez vers la page du panier
3. Survolez la zone où vous souhaitez afficher un produit Sezzle
4. Si des blocs d'application peuvent être placés là, `+` ou `Add block` apparaîtra
* Cliquez, puis sous l'onglet `Apps`, sélectionnez le produit
* Alternativement, ouvrez l'onglet `Sections` et cliquez sur `Add Block`
* Sous l'onglet `Apps`, sélectionnez `Sezzle Widget`
* Faites glisser et déposez le bloc à l'emplacement souhaité dans le menu des contenus
5. Répétez les deux étapes précédentes pour l'autre produit, si désiré

6. [Personnalisez](#customizations) comme souhaité, puis cliquez sur `Save`
### Personnalisations
La section suivante couvre les options de personnalisation disponibles via l'application.
#### Options de personnalisation du Widget
| **Propriété** | **Par défaut** | **Plage/Options** | **Pas** |
| :---------------- | :------------- | :-------------------- | :------ |
| Taille de police | `14px` | `9px` - `18px` | `0.5` |
| Famille de police | inherit | (voir menu déroulant) | - |

#### Options de personnalisation du bouton de paiement
| **Propriété** | **Par défaut** | **Plage/Options** | **Pas** |
| :---------------------------------------- | :--------------------- | :-------------------- | :------ |
| Modèle | `Checkout with Sezzle` | `Pay with Sezzle` | - |
| Thème | `Light` | `Dark` | - |
| Rembourrage (gauche et droite uniquement) | `9px` | `0px` - `30px` | `0.5` |
| Marges (contrôlées individuellement) | `0` | `-20` - `20` | `0.5` |
| Largeur | `auto` | `fit-content`, `100%` | - |

### Placement par défaut
**Si coché**
* Le bouton de paiement Sezzle sera placé après le bouton de paiement natif et héritera des styles de la page
**Si décoché**
* Le bouton sera placé comme indiqué par le placement du bloc d'application
* Les styles peuvent également être affectés, en fonction du placement sélectionné
#### CSS personnalisé
Si vous êtes familier avec le CSS et souhaitez des personnalisations de style supplémentaires, vous pouvez les écrire directement dans votre thème.
1. Dans le coin supérieur gauche, cliquez sur la deuxième icône `Theme Settings`
2. Développez la section CSS personnalisé et écrivez votre extrait personnalisé, puis cliquez sur `Save`

### Dépannage
Vous devrez désinstaller et réinstaller l'application.
Si vous utilisez des blocs d'application et qu'il y a plusieurs éléments de prix sur la page, tous les widgets correspondants se regrouperont au placement du bloc d'application.
Envisagez de passer aux blocs intégrés, ou [contacter le support Sezzle](#request-help) pour mettre à jour la configuration de remplacement.
* Les widgets ne s'afficheront que pour les adresses IP aux États-Unis et au Canada. Si vous consultez depuis un autre pays, veuillez utiliser un VPN.
* Par défaut, les widgets ne s'affichent que sur les produits jusqu'à 2500\$.
* Confirmez qu'une seule méthode d'installation est utilisée. De plus, n'utilisez qu'un seul bloc d'application de chaque produit par page.
Vérifiez que le widget n'a pas été placé plus bas sur la page.
* Les blocs d'application peuvent fonctionner là où les blocs intégrés ne fonctionnent pas.
* Sinon, [contacter le support Sezzle](#request-help) pour une configuration personnalisée.
*
* Veuillez [contacter le support Sezzle](#request-help) pour mettre à jour le remplacement.
* Supprimez ces extraits de code de votre thème.
* Les blocs d'application avec `Default Placement` décoché peuvent fonctionner.
* Nous recourons généralement à l'installation d'un [extrait de code manuel](#checkout-button-manual-theme-code-snippet-installation).
* [Contactez le support Sezzle](#request-help) si vous souhaitez de l'aide.
Si vous avez remarqué un bug dans le widget ou le bouton de paiement, veuillez [contacter le support Sezzle](#request-help) pour nous informer du problème. Nous pourrons alors déterminer s'il s'agit d'un problème pour tous les marchands ou spécifique à votre thème et travailler à le résoudre en conséquence.
#### Personnalisation
* Nous proposons quelques options de personnalisation sélectionnées. Veuillez [contacter le support Sezzle](#request-help) pour demander l'une des options suivantes :
* Logo en niveaux de gris
* Refléter le minimum de paiement dans le widget
* Refléter le widget double Sezzle/Afterpay
* Changements de style et de position
* Pour les changements de position, vous devez utiliser l'option de bloc intégré.
* Rendu conditionnel pour l'abonnement, les cartes-cadeaux, etc.
* Rendu conditionnel au-dessus d'un certain seuil de prix
La mise en œuvre de personnalisations peut empêcher l'affichage des widgets sur les thèmes non publiés et nécessitera l'aide de l'équipe Sezzle pour mettre à jour les widgets lorsqu'un nouveau thème est publié.
### Demander de l'aide
Si l'`Sezzle Widget` application n'est pas en mesure d'installer automatiquement le widget Sezzle ou le bouton de paiement sur votre vitrine, veuillez utiliser le formulaire de demande d'aide dans l'application pour contacter l'équipe d'intégration des marchands Sezzle.
Le formulaire de demande d'aide dans l'`Sezzle Widget` application est uniquement destiné à l'aide concernant le widget et le bouton de paiement. Pour les questions concernant votre compte ou les problèmes avec l'option de paiement Sezzle lors du paiement, veuillez contacter [merchantsupport@sezzle.com](mailto:merchantsupport@sezzle.com).
L'équipe d'intégration des marchands Sezzle ne répond pas aux demandes de renseignements. Si vous demandez une réponse ou si nous devons vous contacter concernant votre demande, nous transmettrons la réponse par l'intermédiaire de notre équipe de support aux marchands.

### Installation manuelle de l'extrait de code du thème
Les installations qui nécessitent des modifications de code directement dans le thème ne sont pas recommandées, sauf si votre site utilise un CMS sans tête, et devraient être utilisées en dernier recours.
#### Installation manuelle de l'extrait de code du thème pour le widget
1. Dans `Shopify Admin`, allez dans `Sales Channels` puis `Online Store`
2. Sous Thèmes, cliquez sur `...` puis `Edit Code` pour le thème que vous souhaitez modifier

3. Dans le `Code Explorer`, allez dans le dossier `Layout` et sélectionnez le fichier `theme.liquid`
4. Copiez et collez le script tout en bas du fichier
* Modèle de script à insérer dans votre page web :
```
```
5. Remplacez `{sezzle_merchant_uuid}` (y compris les accolades) dans le modèle de script par l'ID marchand de votre site
* Celui-ci peut être trouvé dans les [Paramètres d'entreprise du tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/business)
* Exemple avec la valeur de l'ID marchand mise à jour :
```
```
6. Cliquez sur `Save`
#### Installation manuelle de l'extrait de code du thème pour le bouton de paiement
Pour installer le bouton de paiement directement dans le code de votre thème, veuillez vous référer à la documentation et à l'extrait de code sur [GitHub](https://github.com/sezzle/static-widgets/tree/production/src/sezzle-checkout-button#install-as-html).
## Désinstallation
### Désinstallation des blocs intégrés
1. Dans `Shopify Admin`, allez dans `Sales Channels` puis `Online Store`
2. Sous `Themes`, cliquez sur `Customize` pour le thème que vous souhaitez modifier

3. Dans le coin supérieur gauche, cliquez sur la troisième icône `App Embeds`
4. Basculez le(s) bloc(s) intégré(s) souhaité(s) en position `OFF`, puis cliquez sur `Save`

### Désinstallation des blocs d'application
1. Dans `Shopify Admin`, allez dans `Sales Channels` puis `Online Store`
2. Sous `Themes`, cliquez sur `Customize` pour le thème que vous souhaitez modifier

3. Naviguez vers une page de produit
4. Dans le coin supérieur gauche, cliquez sur la première icône `Sections`
5. À côté du bloc `Sezzle Widget`, cliquez sur l'icône `Delete` de la corbeille, puis cliquez sur `Save`
6. Naviguez vers la page du panier, et répétez l'étape précédente pour chaque produit, puis cliquez sur `Save`

### Désinstallation de l'extrait de code manuel du thème
Vous ne devriez avoir besoin d'effectuer cette étape que si vous aviez l'ancienne `Sezzle` application privée installée, ou si vous avez installé les produits manuellement
1. Dans `Shopify Admin`, allez dans `Sales Channels` puis `Online Store`
2. Sous `Themes`, cliquez sur `...` puis `Edit Code` pour le thème que vous souhaitez modifier

3. Examinez le fichier layout/theme.liquid pour tout extrait de code Sezzle
1. Supprimez-les, puis cliquez sur `Save`
2. Répétez pour tous les fichiers contenant product et cart dans le nom
4. Une fois toutes les références supprimées, recherchez les fichiers contenant sezzle dans le nom, et supprimez-les
### Désinstallation de l'application
1. Allez dans `Apps` puis `Sezzle Widget`
2. Dans le coin supérieur droit, cliquez sur l'icône `Menu`, puis sélectionnez `App Settings`
3. Cliquez sur `Delete App`
La suppression de l'application supprimera automatiquement tous les blocs d'application et les blocs intégrés de tous les thèmes. Les installations avec des modifications de code ne seront pas supprimées automatiquement.
# null
Source: https://docs.sezzle.com/fr/docs/plugins/shoplazza
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Shoplazza, permettant aux clients d'utiliser Sezzle lors du paiement.
### Installer l'application Sezzle Shoplazza
1. Connectez-vous à l'administration Shoplazza de votre site web
2. Allez dans `Settings` > `Payments`
3. Cliquez sur `Add payment provider`

4. Dans l'onglet `Search by payment methods`, tapez `Sezzle` dans la barre de recherche, et sélectionnez-le dans les résultats

5. Cliquez sur `Activate`

### Configuration de l'Administration
1. Allez dans `Settings` > `Payments`
2. Cliquez sur `Manage`
3. Copiez votre Clé Privée et votre Clé Publique depuis votre [Tableau de bord Marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Collez-les dans les champs correspondants
4. Cliquez sur `Activate`

### Valider
Effectuez un [paiement test](/fr/docs/api/test-cards#checkout-testing) pour valider que l'intégration est correctement installée.

### Dépannage
*Bientôt disponible*
### Désinstaller l'application Sezzle Shoplazza
1. Allez dans `Settings` > `Payments`
2. Cliquez sur `Manage`

3. Cliquez sur `Disable`

### FAQs
*Bientôt disponible*
# null
Source: https://docs.sezzle.com/fr/docs/plugins/shopware-5
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Shopware 5, permettant aux clients d'utiliser Sezzle lors du paiement. De plus, il inclut des étapes pour mettre à niveau les intégrations existantes vers la dernière version du plugin.
Le plugin Shopware 5 de Sezzle peut être[téléchargé depuis GitHub](https://github.com/sezzle/sezzle-shopware5).
### Installer le plugin Sezzle Shopware 5
Dans la section suivante,`[Shopware]`fait référence à votre répertoire racine Shopware 5.
#### Utilisation du Composer
Allez dans le répertoire d'installation de Shopware 5, puis exécutez les commandes ci-dessous :
1. Ouvrez le terminal et naviguez vers le`Shopware`chemin racine
2. Exécutez la commande ci-dessous pour ajouter le plugin à votre base de code
```
composer require sezzle/shopware5
```
#### Méthode manuelle
1. Téléchargez le`.zip`ou`tar.gz`fichier depuis le dépôt GitHub de Sezzle
2. Décompressez le fichier
3. Naviguez vers Shopware`[Shopware]/custom/plugins/`soit via SFTP ou SSH
4. Copiez le`SwagPaymentSezzle`répertoire du dossier décompressé vers`[Shopware]/custom/plugins/`
5. Connectez-vous au backend de Shopware 5 et naviguez vers`Configuration`>`Plugin Manager`>`Management`>`Installed`
6. Trouvez`Sezzle`dans la liste`Uninstalled`et cliquez sur le bouton`+`pour installer le plugin
* Une fois installé, vous verrez`Sezzle`sous la liste`Inactive`
7. Cliquez sur le bouton`x`pour activer le plugin
* Après une activation réussie, vous pourrez voir`Sezzle`sous`Configuration`>`Payment Methods`
### Mettre à niveau le plugin Shopware 5
#### Utilisation du Composer
1. Changez le numéro de version du`sezzle/sezzlepay`à l'intérieur`composer.json`
2. Ouvrez le terminal et naviguez vers le`Shopware`chemin racine
3. Exécutez la commande suivante pour mettre à jour le plugin vers une version plus récente
```
composer update sezzle/sezzlepay
```
#### Méthode manuelle
1. Téléchargez le`.zip`ou`tar.gz`fichier depuis le dépôt GitHub de Sezzle
2. Décompressez le fichier
3. Supprimez le contenu de`[Shopware]/custom/plugins/SwagPaymentSezzle`
4. Copiez le contenu du`SwagPaymentSezzle`répertoire du dossier décompressé vers`[Shopware]/custom/plugins/SwagPaymentSezzle/`
5. Connectez-vous au backend de Shopware et naviguez vers`Configuration`>`Cache/performance`
6. Videz le stockage du cache en sélectionnant`Clear shop cache`
### Configurer Sezzle
#### Configuration du paiement
1. Assurez-vous d'avoir l'UUID du marchand et les clés API du[Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/)
Vous devez être inscrit auprès de[Sezzle](https://dashboard.sezzle.com/merchant/signup)pour accéder au Tableau de bord marchand
2. Naviguez vers`Customers`>`Payments`>`Sezzle`>`Settings`dans votre backend Shopware
3. Activez Sezzle en cochant la case`Enable`pour cette boutique
4. Définissez la Clé publique et la Clé privée
5. Pour les tests, activez le mode Sandbox en cochant la case`Enable sandbox`
Vous pouvez également vérifier vos`API Keys`en cliquant sur le bouton`Test API Settings`
6. Définissez l'UUID du marchand
7. Définissez l'emplacement du marchand selon l'origine du magasin
8. Cochez la case`Enable Tokenization`pour activer la tokenisation client dans le paiement Sezzle
* Si le client accepte d'être tokenisé, les futurs paiements pour ce client ne nécessiteront pas de redirection vers Sezzle
* Voir[Tokenisation client](/fr/docs/api/tokenization/intro)
9. Définissez`Payment Action`comme`Authorize only`pour effectuer uniquement l'autorisation de paiement et`Authorize and Capture`pour effectuer une capture instantanée
Voir[Autoriser uniquement vs Autoriser et capturer](/fr/docs/guides/auth-and-capture)pour plus de détails sur la différence entre les deux choix
10. Cochez la case`Enable Widget in PDP`pour ajouter le script du widget et le modal du widget Sezzle à la page d'affichage du produit
11. Cochez la case`Enable Widget in Cart`pour ajouter le script du widget et le modal du widget Sezzle à la page du panier
12. Cochez la case`Display errors`pour afficher le code d'erreur lié à Sezzle dans l'URL web en cas d'échec
13. Définir`Logging` à`ERROR` pour enregistrer uniquement les messages d'erreur ou`ALL` pour enregistrer tous les messages, y compris les erreurs, les avertissements et les notifications
14. Enregistrez les paramètres et videz le cache

Votre boutique est maintenant prête à accepter les paiements via Sezzle !
### Fonctionnalité Frontend
* Si vous avez installé avec succès le plugin Sezzle, alors Sezzle sera inclus comme méthode de paiement sur la page de paiement.
1. Sélectionnez`Sezzle` et continuez
2. Une fois que vous cliquez sur`Complete Payment`, vous serez redirigé vers le paiement Sezzle pour finaliser la transaction
Si votre compte est déjà tokenisé, ignorez les deux étapes suivantes car vous ne serez pas redirigé vers Sezzle
3. \[Facultatif] Sur la dernière page du paiement Sezzle, cochez la case`Approve {Store Name}` pour traiter les paiements depuis votre compte Sezzle pour les transactions futures
* Vous pouvez révoquer cette autorisation à tout moment dans votre tableau de bord Sezzle pour tokeniser votre compte
4. Cliquez sur`Complete Order` pour finaliser votre achat
* Une fois la commande passée avec succès, vous serez redirigé vers la page de confirmation de commande

### Capture du Paiement
**Si l'Action de Paiement est définie sur Autoriser et Capturer**
* La capture sera effectuée instantanément par le plugin après que la commande soit créée et validée dans`Shopware`
**Si l'Action de Paiement est définie sur Autoriser**
* La capture doit être effectuée manuellement depuis le backend`Shopware`. Suivez les étapes ci-dessous pour capturer :
1. Allez à la commande et cliquez sur l'onglet`Sezzle`
2. Entrez une valeur dans le champ`Amount`
3. Cliquez sur`Capture` pour capturer le paiement dans Sezzle
### Remboursement du Paiement
1. Allez à la commande et cliquez sur l'onglet`Sezzle`
2. Entrez une valeur dans le champ`Amount`
3. Cliquez sur`Refund` pour rembourser le paiement dans Sezzle
### Libération du Paiement
1. Allez à la commande et cliquez sur l'onglet`Sezzle`
2. Entrez une valeur dans le champ`Amount`
3. Cliquez sur`Release` pour libérer le paiement dans Sezzle
### Vérification de la Commande dans le Backend Shopware
Les marchands doivent toujours vérifier le statut du paiement et le montant de toutes les commandes. Les étapes suivantes garantissent que chaque action a été effectuée comme prévu.
1. Connectez-vous à l'administration Shopware et naviguez vers`Customers` >`Orders`

2. Accédez à la commande correspondante
* Le paiement est**capturé avec succès** par Sezzle lorsque
* `Current Payment Status` `=` `Completely Paid`
* `Capture Amount` `=` `Auth Amount`
* Le paiement est seulement**autorisé** lorsque
* `Current Payment Status` `=` `Open`
* `Auth Amount` `=` `Order Amount`
* `Capture Amount` `=` `0`
* Le paiement est**remboursé** lorsque
* `Current Payment Status` `=` `Re-crediting`
* `Refund Amount` `=<` `Capture Amount`
* Le paiement est**libéré** lorsque
* `Current Payment Status` `=` `The process is cancelled for a full release or Open for a partial release`
* Le montant sera déduit de`Auth Amount` et devrait apparaître dans`Released Amount`

### Vérification de la Commande dans le Tableau de Bord Marchand Sezzle
1. Connectez-vous au Tableau de Bord Marchand Sezzle et naviguez vers`Orders`
2. Accédez à la commande correspondante
| Statut du Paiement | Description |
| :---------------------------------------------------------------- | :------------------------------------------------------------------ |
| Approuvé | Paiement capturé avec succès |
| Autorisé, non capturé | Paiement autorisé mais non capturé |
| Remboursé ou Partiellement Remboursé | Paiement remboursé |
| Supprimé en raison de la non-capture du paiement avant expiration | Paiement libéré ou non capturé avant l'expiration de l'autorisation |
### Détails de Tokenisation du Client
1. Connectez-vous au Backend Shopware et naviguez vers`Customers` >`Customers`
2. Sélectionnez le client pour voir les détails de tokenisation
* `Sezzle Customer UUID`,`Sezzle Customer UUID Expiry` et`Sezzle Customer UUID Status` apparaîtront sous`Free text fields`

### Valider
Effectuez un[paiement test](/fr/docs/api/test-cards#live-checkout-testing) pour valider que l'intégration est correctement installée
### Dépannage
* `Sezzle` plugin crée des journaux de`Sezzle` action
* Dans le cas où les équipes de Succès Marchand et de Support ne parviennent pas à résoudre un problème, le Marchand peut demander que ces journaux soient transmis à l'équipe d'Intégrations de Plateforme pour un dépannage plus approfondi
* Les journaux sont nommés`plugin_dev-.log`
* Pour faciliter le dépannage, nous recommandons d'envoyer également le`core_dev-.log`
* Les journaux peuvent être trouvés dans`[Shopware]/var/log/`
# null
Source: https://docs.sezzle.com/fr/docs/plugins/wix
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site Web Wix, permettant aux clients d'utiliser Sezzle lors du paiement.
### Ajouter un mode de paiement
1. Depuis le tableau de bord de votre boutique Wix, sélectionnez `Settings`, et `Accept Payments`
2. Choisissez le lien `See More Payment Options` en bas de la page
3. Localisez `Sezzle` dans la liste, et choisissez `Connect`
* Cela vous amène à la page de connexion Sezzle
4. Entrez vos clés API depuis le [Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys) et choisissez `Connect`
* Sezzle sera maintenant disponible comme mode de paiement lors du paiement
### Valider
Effectuez un [paiement test](/fr/docs/api/test-cards#checkout-testing) pour valider que l'intégration est correctement installée.
### Dépannage
Pour les problèmes de connexion de compte, vérifiez les points suivants :
1. Les clés API ont été saisies correctement
Pour éviter les fautes de frappe ou les espaces supplémentaires, utilisez l'icône Copier dans le [Tableau de bord marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys).
2. Si vous avez plusieurs comptes avec Sezzle, chaque boutique a son propre ID marchand et ses propres clés API qui sont liés à l'URL de la boutique
Si Sezzle n'apparaît pas comme option de paiement lors des tests en direct :
* Assurez-vous que Sezzle est activé comme fournisseur de paiement sur votre site.
* Allez dans `Settings` > `Accept Payments` et assurez-vous que `Accepting Payments` est affiché pour Sezzle.
# null
Source: https://docs.sezzle.com/fr/docs/plugins/woocommerce
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web WooCommerce, permettant aux clients d'utiliser Sezzle lors du paiement.
### Installer l'extension Sezzle WooCommerce
1. Connectez-vous à l'administration Wordpress de votre site web
* Ex: `your-website.com/wp-admin`

2. Dans la barre latérale gauche, cliquez sur `Plugins` > `Add New`
3. Recherchez `Sezzle`
4. Cliquez sur `Install Now`

5. Cliquez sur `Activate`

### Configuration de l'administration
1. Dans la barre latérale gauche, cliquez sur `WooCommerce` > `Settings`
2. Sélectionnez l'onglet `Payments`

3. Cliquez sur le bouton `Manage` pour Sezzle

4. Cochez la case `Enable/Disable` pour activer Sezzle
5. Cochez l'option de disponibilité du paiement dans d'autres pays si vous voulez autoriser Sezzle en dehors des États-Unis et du Canada
* Sezzle opère uniquement aux `US` et au `Canada`
* Assurez-vous de cocher cette option
6. Définissez l'ID Marchand tel que reçu dans la section Business du [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant)
7. Copiez votre Clé Privée et votre Clé Publique depuis votre [Sezzle Merchant Dashboard](https://dashboard.sezzle.com/merchant/settings/apikeys), et collez-les dans les champs correspondants
8. Cochez la case `Create order post checkout completion` pour activer la création de commande WooCommerce uniquement après que le paiement Sezzle est complété avec succès
Cela ne fonctionnera qu'avec le paiement classique standard, pas avec les blocs de paiement
9. Définir`Minimum Checkout Amount`si vous voulez restreindre Sezzle en fonction d'un montant minimum de commande
10. Définir le`Transaction Mode`comme`Live`pour la production et`Sandbox`pour le mode de test sandbox
11. Cochez la case`Show Sezzle widget in product pages`pour ajouter le script du widget dans la Page d'Affichage du Produit, ce qui permet d'activer le Modal Widget Sezzle dans la PDP
* Après l'enregistrement, si vous ne voyez pas le widget dans la PDP, essayez de[l'installer manuellement](#manual-widget-installation)
12. Configurez le widget du plan de paiement échelonné dans les paramètres de Configuration du Widget de Plan de Paiement Échelonné
13. Cochez la case`Enable Installment Widget Plan in Checkout page`pour activer le widget du plan de paiement échelonné
14. Définir le`Order Total Container Class Name`
* La valeur par défaut est`woocommerce-Price-amount`
15. Définir le`Order Total Container Parent Class Name`
* La valeur par défaut est`order-total`
16. Cochez la case`Enable Logging`pour enregistrer les données liées au paiement Sezzle
* Ceci est utile pour déboguer les problèmes, si rencontrés
17. Cliquez sur`Save Changes`
### Valider
Effectuez un[paiement test](/fr/docs/api/test-cards#checkout-testing)pour valider que l'intégration est correctement installée.
### Note importante sur l'exécution des commandes
Avant d'expédier la commande, assurez-vous que les Notes de Commande dans l'interface WooCommerce indiquent que le statut de la commande est`Processing`et incluent`Payment approved by Sezzle`. Lorsque ces notes existent, vous savez que le client a terminé le paiement chez Sezzle, et que vous serez payé pour la commande.
WooCommerce créera une commande indépendamment du fait que le client termine ou non le paiement chez Sezzle. Vérifiez les Notes de Commande et n'exécutez pas les commandes où le paiement Sezzle n'est pas terminé.
### Installation manuelle du widget
#### Vous utilisez Elementor ?
Dans le constructeur de page Elementor, faites glisser et déposez le type de bloc HTML personnalisé dans le pied de page du site, en ajoutant le snippet de script du widget dans la boîte de code, puis enregistrez et publiez les modifications.
1. Dans votre compte WooCommerce, allez dans`Appearance`, puis`Theme Editor`
2. Cliquez sur`Theme Footer`à droite de la page
3. Dans la zone de texte Contenu, insérez le script sur la dernière ligne du code, et cliquez sur`Update File`
* Le script ci-dessous est ce que vous devrez insérer :
```
```
* Vous devrez mettre à jour le dans le script ci-dessus pour refléter l'UUID de votre magasin.
* Vous pouvez trouver votre UUID dans votre tableau de bord Sezzle, sous`Settings`, puis`Business`.
* Lorsque vous entrez votre UUID, assurez-vous de supprimer les qui l'entourent.
### Dépannage
Si le test n'a pas réussi, vérifiez les points suivants :
1. L'extension Sezzle WooCommerce est la version la plus à jour
1. Allez dans`Plugins`>`Installed Plugins`
2. Cliquez sur`View Details`à côté de`Sezzle WooCommerce Payment`
3. S'il y a une option pour mettre à niveau, faites-le maintenant
2. L'extension Sezzle est activée
1. Allez dans`WooCommerce`>`Settings`
2. Assurez-vous que l'interrupteur est`On`
3. L'ID du marchand a été saisi correctement
4. Les clés API ont été saisies correctement
Il est recommandé d'utiliser l'icône Copier dans le[Tableau de bord du marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)pour éviter les fautes de frappe ou les espaces supplémentaires
5. Si vous avez plusieurs comptes avec Sezzle, l'ID du marchand et les clés API sont liés à une seule URL
6. La case Afficher le widget Sezzle dans les pages de produits est cochée
7. Le script du widget est présent sur votre site web et reflète l'ID du marchand de votre[Tableau de bord du marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/business)
1. Allez sur une page de produit de votre site web
2. Faites un clic droit puis sélectionnez`Inspect`
3. Dans l'onglet`Elements`, recherchez`widget.sezzle`
### Étapes de désinstallation
1. Allez dans`Plugins`>`Installed Plugins`
2. Sous`Sezzle WooCommerce Payment`, cliquez sur`Deactivate`puis cliquez sur`Delete`
# null
Source: https://docs.sezzle.com/fr/docs/plugins/zoey
Ce guide explique comment ajouter Sezzle comme option de paiement sur votre site web Zoey, permettant aux clients d'utiliser Sezzle lors du paiement.
### Installer l'Extension Sezzle Zoey
Contactez le [Support Zoey](https://www.support.zoey.com/) pour installer l'application Sezzle.
### Configuration de l'Administration
1. Allez dans `Set-up` > `Payment Methods` > `Sezzle`
2. Cliquez sur `Configure`

3. Configurez l'extension
1. Définissez `Enabled` sur `Yes`
2. Copiez votre ID Marchand depuis votre [Tableau de bord Marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/business)
* Collez-le dans le champ correspondant dans la page de configuration Sezzle de votre administration Zoey
3. Copiez votre Clé Publique et votre Clé Privée depuis votre [Tableau de bord Marchand Sezzle](https://dashboard.sezzle.com/merchant/settings/apikeys)
* Collez-les dans les champs correspondants dans la page de configuration Sezzle de votre administration Zoey
4. Emplacements du Script Widget
* Si vous voulez que le script widget soit ajouté à la Page d'Affichage du Produit, définissez `Add Widget Script in PDP` sur `Yes`
* Si vous voulez que le script widget soit ajouté à la Page du Panier, définissez `Add Widget Script in Cart Page` sur `Yes`
5. Définissez `Payment from Applicable Countries` sur `Specific Countries`
6. Définissez `Payment from Specific Countries` sur `United States` ou `Canada` selon le cas
7. Enregistrez la configuration

8. Cliquez sur `Advanced/Refresh Your Store`
L'installation est terminée !
### Valider
Effectuez un [paiement test](/fr/docs/api/test-cards#checkout-testing) pour valider que l'intégration est correctement installée.