Xflow Payouts API
The Payouts API from Xflow — 2 operation(s) for payouts.
The Payouts API from Xflow — 2 operation(s) for payouts.
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 Payouts API
version: '2024-02-05'
servers:
- url: https://api.xflowpay.com/
security:
- bearerAuth: []
tags:
- name: Payouts
paths:
/v1/payouts:
get:
description: Returns a list of payouts.
operationId: ListPayouts
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: 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: 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: Valid status for payouts.
in: query
name: status
required: false
schema:
items:
enum:
- initialized
- processing
- settled
- failed
- hold
type: string
type: array
- description: Account identifier for the account to which funds are being deposited. Refer [account object](https://docs.xflowpay.com/2024-02-05/api#accounts) for more details.
in: query
name: to.account_id
required: false
schema:
type: string
- description: Address identifier of the account to which funds are being deposited. Refer [address object](https://docs.xflowpay.com/2024-02-05/api#addresses) for more details.
in: query
name: to.address_id
required: false
schema:
type: string
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/payout'
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: ListPayoutsResponse
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:
- Payouts
/v1/payouts/{payout}:
get:
description: Retrieves the details of a payout.
operationId: RetrievePayout
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: payout
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/payout'
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:
- Payouts
post:
description: Update the details of a payout.
operationId: UpdatePayout
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: payout
required: true
schema:
type: string
style: simple
requestBody:
content:
application/json:
schema:
properties:
metadata:
additionalProperties:
type: string
description: Set of [key-value pairs](https://docs.xflowpay.com/2024-02-05/api#metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
title: UpdatePayoutRequestMetadata
nullable: true
type: object
title: UpdatePayoutRequest
type: object
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/payout'
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:
- Payouts
components:
schemas:
payout:
description: Payout objects are created by Xflow whenever funds are moved out of an Xflow account into a real-world destination (for a store of value).
properties:
amount:
description: Amount value associated with the payout.
type: string
arrival_time:
description: The seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time) at which the funds are expected to be credited at the specified address. Put another way, this is the date the the payout is expected to arrive in the bank. This factors in delays like weekends or bank holidays.
format: unix-time
nullable: true
type: integer
automatic:
description: Has the value `true` if automatic payouts are enabled and has the value `false` if manual payouts are enabled. Currently, Xflow supports automatic payouts only.
type: boolean
created:
description: The seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time) at which the payout object was created.
format: unix-time
type: integer
currency:
description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-digit code for the amount currency.
enum:
- INR
- USD
type: string
id:
description: Unique identifier for the object.
type: string
livemode:
description: Has the value true if the object exists in `livemode` or the value false if the object exists in `testmode`.
type: boolean
metadata:
additionalProperties:
type: string
description: Set of [key-value pairs](https://docs.xflowpay.com/2024-02-05/api#metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
title: PayoutsMetadata
nullable: true
type: object
object:
description: String representing the object's type. Objects of the same type share the same value.
enum:
- payout
type: string
payment_method:
description: Payment method via which funds were deposited.
enum:
- domestic_credit
- domestic_fast_credit
- domestic_wire
- global_wire
type: string
payment_method_details:
description: Details of the account & currency to which the funds are being transferred.
properties:
reference_number:
description: This is a reference number associated with the payment method.
type: string
title: PayoutPaymentMethodDetails
nullable: true
type: object
payout_confirmation:
description: File object providing details of the payout amount. E.g. - MT 103, Payment Advice.
nullable: true
type: string
statement_descriptor:
description: Text which appears on the bank account statement.
type: string
status:
description: Valid status for payouts.
enum:
- initialized
- processing
- settled
- failed
- hold
type: string
to:
description: Details of the account & currency to which the funds are being transferred.
properties:
account_id:
description: Account identifier for the account to which funds are being paid out. Refer [account object](https://docs.xflowpay.com/2024-02-05/api#accounts) for more details.
type: string
address_id:
description: Address identifier of the account to which funds are being paid out. Refer [address object](https://docs.xflowpay.com/2024-02-05/api#addresses) for more details.
type: string
title: PayoutTo
type: object
title: Payout
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