Files
medusa-store/docs/api/store/components/schemas/PaymentSession.yaml
github-actions[bot] 7963c16233 chore(docs): Generated API Reference (#4054)
Co-authored-by: olivermrbl <olivermrbl@users.noreply.github.com>
Co-authored-by: Shahed Nasser <shahednasser@gmail.com>
2023-05-09 18:12:00 +03:00

104 lines
3.2 KiB
YAML

title: Payment Session
description: >-
Payment Sessions are created when a Customer initilizes the checkout flow, and
can be used to hold the state of a payment flow. Each Payment Session is
controlled by a Payment Provider, who is responsible for the communication
with external payment services. Authorized Payment Sessions will eventually
get promoted to Payments to indicate that they are authorized for
capture/refunds/etc.
type: object
required:
- amount
- cart_id
- created_at
- data
- id
- is_initiated
- is_selected
- idempotency_key
- payment_authorized_at
- provider_id
- status
- updated_at
properties:
id:
description: The payment session's ID
type: string
example: ps_01G901XNSRM2YS3ASN9H5KG3FZ
cart_id:
description: The id of the Cart that the Payment Session is created for.
nullable: true
type: string
example: cart_01G8ZH853Y6TFXWPG5EYE81X63
cart:
description: A cart object. Available if the relation `cart` is expanded.
nullable: true
$ref: ./Cart.yaml
provider_id:
description: The id of the Payment Provider that is responsible for the Payment Session
type: string
example: manual
is_selected:
description: >-
A flag to indicate if the Payment Session has been selected as the method
that will be used to complete the purchase.
nullable: true
type: boolean
example: true
is_initiated:
description: >-
A flag to indicate if a communication with the third party provider has
been initiated.
type: boolean
default: false
example: true
status:
description: >-
Indicates the status of the Payment Session. Will default to `pending`,
and will eventually become `authorized`. Payment Sessions may have the
status of `requires_more` to indicate that further actions are to be
completed by the Customer.
type: string
enum:
- authorized
- pending
- requires_more
- error
- canceled
example: pending
data:
description: >-
The data required for the Payment Provider to identify, modify and process
the Payment Session. Typically this will be an object that holds an id to
the external payment session, but can be an empty object if the Payment
Provider doesn't hold any state.
type: object
example: {}
idempotency_key:
description: >-
Randomly generated key used to continue the completion of a cart in case
of failure.
nullable: true
type: string
externalDocs:
url: https://docs.medusajs.com/development/idempotency-key/overview.md
description: Learn more how to use the idempotency key.
amount:
description: The amount that the Payment Session has been authorized for.
nullable: true
type: integer
example: 100
payment_authorized_at:
description: The date with timezone at which the Payment Session was authorized.
nullable: true
type: string
format: date-time
created_at:
description: The date with timezone at which the resource was created.
type: string
format: date-time
updated_at:
description: The date with timezone at which the resource was updated.
type: string
format: date-time