Xflow Payments API
The Payments API from Xflow — 2 operation(s) for payments.
The Payments API from Xflow — 2 operation(s) for payments.
openapi: 3.0.0
info:
contact:
email: support@xflowpay.com
name: Xflow Support
url: https://xflowpay.com
description: The Xflow REST API. Please see https://docs.xflowpay.com/2024-02-05/api for more details.
termsOfService: https://docs.xflowpay.com/platform-agreement
title: Xflow Accounts Payments API
version: '2024-02-05'
servers:
- url: https://api.xflowpay.com/
security:
- bearerAuth: []
tags:
- name: Payments
paths:
/v1/payments:
get:
description: Returns a list of payments.
operationId: ListPayments
parameters:
- description: This header specifies the connected user's account on behalf of which the request is being made.
in: header
name: Xflow-Account
required: false
schema:
type: string
- description: Return results where the `created` field is equal to the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.eq
required: false
schema:
format: unix-time
type: integer
- description: Return results where the `created` field is greater than the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.gt
required: false
schema:
format: unix-time
type: integer
- description: Return results where the `created` field is greater than or equal to the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.gte
required: false
schema:
format: unix-time
type: integer
- description: Return results where the `created` field is lesser than the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.lt
required: false
schema:
format: unix-time
type: integer
- description: Return results where the `created` field is lesser than or equal to the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.lte
required: false
schema:
format: unix-time
type: integer
- description: A cursor for use in pagination. `ending_before` is an object identifier that defines your place in the list. For instance, if you make a list request and receive 5 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
in: query
name: ending_before
required: false
schema:
type: string
- description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-digit code for the from amount currency.
in: query
name: from.currency
required: false
schema:
type: string
- description: A limit on the number of objects to be returned, between 1 and 10. If this parameter is not specified, a default value of 10 is assumed.
in: query
name: limit
required: false
schema:
type: integer
- description: Unique identifier for the object that created this underlying payment object.
in: query
name: linked_id
required: false
schema:
items:
type: string
type: array
- description: A cursor for use in pagination. `starting_after` is an object identifier that defines your place in the list. For instance, if you make a list request and receive 5 objects, ending with `obj_bar`, your subsequent call can include `starting_after=obj_bar` in order to fetch the next page of the list.
in: query
name: starting_after
required: false
schema:
type: string
- description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-digit code for the to amount currency.
in: query
name: to.currency
required: false
schema:
type: string
- description: This is the [type](https://docs.xflowpay.com/2024-02-05/api#payment_object_type) of the linked payment.
in: query
name: type
required: false
schema:
items:
enum:
- adjustment_negative
- adjustment_positive
- deposit_reversal
- fee_advance_debit
- funds_credit
- funds_debit
- fx_fee
- payout
- payout_failure
- payout_fee
- platform_partner_debit
- processing_fee
- reconcile
- reconcile_paypal
- transfer
- unfunds_debit
type: string
type: array
responses:
'200':
headers:
Date:
schema:
type: string
Content-Length:
schema:
type: integer
Connection:
schema:
type: string
x-amzn-RequestId:
schema:
type: string
xflow-request-id:
schema:
type: string
x-amz-apigw-id:
schema:
type: string
X-Amzn-Trace-Id:
schema:
type: string
content:
application/json:
schema:
properties:
data:
items:
$ref: '#/components/schemas/payment'
type: array
has_next:
description: True if this list has another page of items after this one that can be fetched.
type: boolean
object:
description: String representing the object's type. Objects of the same type share the same value. Always has the value `list`.
enum:
- list
type: string
title: ListPaymentsResponse
type: object
description: Successful response.
default:
headers:
Date:
schema:
type: string
Content-Length:
schema:
type: integer
Connection:
schema:
type: string
x-amzn-RequestId:
schema:
type: string
xflow-request-id:
schema:
type: string
x-amz-apigw-id:
schema:
type: string
X-Amzn-Trace-Id:
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/error_object'
description: Error response.
tags:
- Payments
/v1/payments/{payment}:
get:
description: Retrieves the details of a payment.
operationId: RetrievePayment
parameters:
- description: This header specifies the connected user's account on behalf of which the request is being made.
in: header
name: Xflow-Account
required: false
schema:
type: string
- in: path
name: payment
required: true
schema:
type: string
style: simple
responses:
'200':
headers:
Date:
schema:
type: string
Content-Length:
schema:
type: integer
Connection:
schema:
type: string
x-amzn-RequestId:
schema:
type: string
xflow-request-id:
schema:
type: string
x-amz-apigw-id:
schema:
type: string
X-Amzn-Trace-Id:
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/payment'
description: Successful response.
default:
headers:
Date:
schema:
type: string
Content-Length:
schema:
type: integer
Connection:
schema:
type: string
x-amzn-RequestId:
schema:
type: string
xflow-request-id:
schema:
type: string
x-amz-apigw-id:
schema:
type: string
X-Amzn-Trace-Id:
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/error_object'
description: Error response.
tags:
- Payments
components:
schemas:
payment:
description: The Payment object models real-world money movement into, within and out of Xflow. Payments lead to movement of money from source to destination and result in the creation of BalanceTransactions. Payments between different types of currencies will result in the creation of an ExchangeRate object. Xflow models fees as distinct payments as well.
properties:
created:
description: The seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time) at which the payment object was created.
format: unix-time
type: integer
fee_plan_id:
description: Unique identifier for the FeePlan object associated with this payment. This parameter is non-null for fees related payments.
type: string
from:
description: Details of the account & currency from which the funds are being transferred.
properties:
amount:
description: Amount value.
type: string
currency:
description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-digit code for the currency.
type: string
title: PaymentFrom
type: object
id:
description: Unique identifier for the object.
type: string
is_exchange_rate_applicable:
description: Has the value `true` if an ExchangeRate object is associated with this payment, otherwise the value is `false`.
type: boolean
linked_id:
description: Unique identifier for the object that created this underlying payment object.
type: string
linked_object:
description: String representing the linked object’s type. Objects of the same type share the same value.
enum:
- deposit
- receivable
- payout
- transfer
type: string
linked_payments:
description: This array of hashes contains details of the linked payment IDs
minItems: 1
items:
properties:
account_id:
description: This is the identifier of the account that the linked payment belongs to.
type: string
payment_id:
description: This is the identifier of the linked payment.
type: string
payment_type:
description: This is the [type](https://docs.xflowpay.com/2024-02-05/api#payment_object_type) of the linked payment.
enum:
- adjustment_negative
- adjustment_positive
- deposit_reversal
- fee_advance_debit
- funds_credit
- funds_debit
- fx_fee
- payout
- payout_failure
- payout_fee
- platform_partner_debit
- processing_fee
- reconcile
- reconcile_paypal
- transfer
- unfunds_debit
type: string
title: PaymentLinkedPayments
type: object
nullable: true
type: array
livemode:
description: Has the value true if the object exists in `livemode` or the value false if the object exists in `testmode`.
type: boolean
object:
description: String representing the object's type. Objects of the same type share the same value.
enum:
- payment
type: string
payout_eligible_at:
description: The seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time) at which the payment becomes eligible for payout. This is applicable only for Payment type `reconcile`.
format: unix-time
nullable: true
type: integer
to:
description: Details of the account & currency to which the funds are being transferred.
properties:
amount:
description: Amount value.
type: string
currency:
description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-digit code for the currency.
type: string
title: PaymentTo
type: object
type:
description: Payment type.
enum:
- adjustment_negative
- adjustment_positive
- deposit_reversal
- fee_advance_debit
- funds_credit
- funds_debit
- fx_fee
- payout
- payout_failure
- payout_fee
- platform_partner_debit
- processing_fee
- reconcile
- transfer
- unfunds_debit
type: string
title: Payment
type: object
error_object:
description: 'Xflow uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the `2xx` range indicate success. Codes in the `4xx` range indicate an error that failed given the information provided (e.g., a required parameter was omitted, a payment failed, etc.). Codes in the `5xx` range indicate an error with Xflow’s servers (these are rare).'
properties:
errors:
description: An array of errors. Each element is a specific error.
maxItems: 1
minItems: 1
items:
properties:
code:
description: Enum value specific to the error. All Xflow error codes are defined [here](https://docs.xflowpay.com/latest/errors).
enum:
- account_activation_failed_missing_payout_address
- account_activation_failed_missing_person
- account_activation_failed_incorrect_number_of_persons
- account_activation_failed_incorrect_relationship_for_person
- account_email_invalid
- account_id_invalid
- account_not_unique_nickname
- account_parameter_not_editable
- account_partner_activate_disallowed
- account_partner_deactivate_disallowed
- account_platform_activate_disallowed
- account_platform_create_disallowed
- account_setting_parameter_not_editable
- account_status_invalid
- account_type_invalid
- account_update_access_unauthorized
- account_user_activate_disallowed
- account_user_create_disallowed
- action_invalid
- action_not_enabled
- action_unauthorized
- address_cannot_be_deactivated
- address_category_mismatch
- address_category_not_allowed
- address_domestic_credit_invalid
- address_global_wire_invalid
- address_global_wire_not_supported
- address_parameter_not_editable
- address_type_not_allowed
- balance_insufficient
- cancelled_request
- country_code_invalid
- country_code_not_supported
- currency_amount_mismatch
- currency_not_supported
- date_invalid_format
- deposit_account_address_mismatch
- deposit_account_id_mismatch
- deposit_parameter_not_editable
- duplicate_currencies_not_supported
- duplicate_values_found
- event_type_invalid
- fee_plan_parameter_not_editable
- file_name_invalid
- file_name_length_invalid
- file_parameter_not_editable
- file_purpose_mismatch
- file_size_limit_exceeded
- file_request_body_invalid
- file_type_unsupported
- header_parameter_invalid
- header_parameter_missing
- http_parameter_invalid
- invalid_amount
- invoice_date_invalid
- invoice_due_date_invalid
- metadata_count_exceeded
- metadata_key_max_length_invalid
- metadata_key_min_length_invalid
- metadata_value_max_length_invalid
- metadata_value_min_length_invalid
- multiple_xflow_receive_same_category_not_allowed
- minimum_required_values_not_present
- object_not_found
- parameter_address_invalid
- parameter_character_invalid
- parameter_empty
- parameter_file_invalid
- parameter_max_length_invalid
- parameter_min_length_invalid
- parameter_range_invalid
- parameter_receivable_invalid
- parameter_unexpected
- parameter_value_invalid
- payment_link_account_receivable_mismatch
- payment_link_activate_disallowed
- payment_link_deactivate_invalid
- payment_link_expire_invalid
- payment_link_extend_disallowed
- payment_link_extend_invalid
- payment_link_non_us_account_non_usd_currency
- payment_link_parameter_not_editable
- payment_link_receivable_count_exceed
- payment_link_receivable_status_invalid
- payout_parameter_not_editable
- person_delete_not_allowed
- person_parameter_not_editable
- person_relationship_not_set
- person_update_not_allowed
- purpose_code_not_supported
- receivable_additional_info_required
- receivable_amount_invoice_amount_mismatch
- receivable_amount_maximum_reconcilable_incorrect
- receivable_cancel_disallowed
- receivable_confirm_action_disallowed
- receivable_creation_date_invoice_creation_date_mismatch
- receivable_currency_invoice_currency_mismatch
- receivable_due_date_invoice_due_date_mismatch
- receivable_hold
- receivable_invoice_document_incorrect
- receivable_invoice_reference_number_exists
- receivable_invoice_transaction_type_incorrect
- receivable_parameter_not_editable
- receivable_partner_country_invoice_partner_country_mismatch
- receivable_partner_invoice_partner_mismatch
- receivable_reconcile_action_disallowed
- receivable_reconcile_amount_exceed
- receivable_reference_number_invoice_reference_number_mismatch
- receivable_unable_to_process
- receivable_update_access_unauthorized
- request_body_invalid
- request_query_parameter_invalid
- resource_locked
- secret_key_invalid
- secret_key_missing
- testmode_action_only
- timestamp_invalid
- transfer_failed
- transfer_parameter_not_editable
- transfer_type_invalid
- url_invalid
- webhook_endpoint_limit_exceeded
- webhook_endpoint_parameter_not_editable
- website_invalid
type: string
message:
description: Description of the error with guidance on how to recover.
type: string
metadata:
additionalProperties:
type: string
description: Additional information associated with the error in the form of key-value pairs.
nullable: true
title: ErrorMetadata
type: object
title: ErrorObjectSingle
type: object
type: array
http_status_code:
description: HTTP status code.
type: integer
object:
description: String representing the object's type. Objects of the same type share the same value.
enum:
- error
type: string
title: ErrorObject
type: object
securitySchemes:
bearerAuth:
bearerFormat: auth-scheme
description: 'Bearer HTTP authentication. Allowed headers-- Authorization: Bearer <api_key>'
scheme: bearer
type: http