Files
sendico/interface/api/payments/request/payment.yaml
2026-02-24 21:26:31 +03:00

105 lines
2.5 KiB
YAML

components:
schemas:
PaymentBase:
type: object
additionalProperties: false
required:
- idempotencyKey
properties:
idempotencyKey:
type: string
metadata:
type: object
additionalProperties:
type: string
QuotePaymentRequest:
type: object
additionalProperties: false
required:
- intent
properties:
idempotencyKey:
type: string
metadata:
type: object
additionalProperties:
type: string
intent:
$ref: ../../../models/payment/payment.yaml#/components/schemas/PaymentIntent
previewOnly:
type: boolean
allOf:
- if:
properties:
previewOnly:
const: true
required:
- previewOnly
then:
not:
required:
- idempotencyKey
else:
required:
- idempotencyKey
QuotePaymentsRequest:
type: object
additionalProperties: false
required:
- intents
properties:
idempotencyKey:
type: string
metadata:
type: object
additionalProperties:
type: string
intents:
type: array
minItems: 1
items:
$ref: ../../../models/payment/payment.yaml#/components/schemas/PaymentIntent
previewOnly:
type: boolean
allOf:
- if:
properties:
previewOnly:
const: true
required:
- previewOnly
then:
not:
required:
- idempotencyKey
else:
required:
- idempotencyKey
InitiatePaymentRequest:
allOf:
- $ref: ./payment.yaml#/components/schemas/PaymentBase
- type: object
additionalProperties: false
oneOf:
- required: [intent]
- required: [quoteRef]
properties:
intent:
$ref: ../../../models/payment/payment.yaml#/components/schemas/PaymentIntent
quoteRef:
type: string
InitiatePaymentsRequest:
allOf:
- $ref: ./payment.yaml#/components/schemas/PaymentBase
- type: object
additionalProperties: false
required:
- quoteRef
properties:
quoteRef:
type: string