fidor_schema 0.1.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +8 -0
- data/CHANGELOG.md +7 -0
- data/Gemfile +2 -0
- data/README.md +27 -0
- data/Rakefile +8 -0
- data/fidor_schema.gemspec +28 -0
- data/lib/fidor/schema.rb +13 -0
- data/lib/fidor_schema.rb +2 -0
- data/lib/fidor_schema_version.rb +5 -0
- data/schema/v1.0/account.json +118 -0
- data/schema/v1.0/base_types/base_types.json +124 -0
- data/schema/v1.0/batch_direct_debit.json +140 -0
- data/schema/v1.0/batch_transfer.json +179 -0
- data/schema/v1.0/customer.json +204 -0
- data/schema/v1.0/error.json +42 -0
- data/schema/v1.0/internal_transfer.json +137 -0
- data/schema/v1.0/sepa_credit_transfer.json +123 -0
- data/schema/v1.0/sepa_direct_debit.json +125 -0
- data/schema/v1.0/sepa_mandate.json +158 -0
- data/schema/v1.0/transaction.json +134 -0
- data/schema/v1.0/transaction_type_details/credit_card_details.json +32 -0
- data/schema/v1.0/transaction_type_details/internal_transfer_details.json +17 -0
- data/schema/v1.0/transaction_type_details/sepa_credit_transfer_details.json +27 -0
- data/schema/v1.0/transaction_type_details/sepa_direct_debit_details.json +25 -0
- data/schema/v1.0/user.json +34 -0
- data/spec/fidor_schema_spec.rb +20 -0
- data/spec/spec_helper.rb +10 -0
- metadata +157 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: d20bce8312da6521a63aa2702dbe8422a20d2ce1
|
4
|
+
data.tar.gz: 3b140e2370a078335051e76edf9bdd947d96df4b
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 34011c7dc15704691350254dcff74eb7a9f9d15ad2a26c15b86aceba812a4f28468116d093aefa1ddd3eaad5907f5fc262526fb4b3ca33bed283c37cedcea662
|
7
|
+
data.tar.gz: c66566de7bd062112314300b4b4c51ddbbea51cacd95797523bd02543fb8f5873bcfb0bb4a71662660c51c31c53243b059225bd0ded7846f53c90c283154231b
|
data/.gitignore
ADDED
data/CHANGELOG.md
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
# Fidor API Schema
|
2
|
+
|
3
|
+
The Fidor API is described with [JSON Schema](http://json-schema.org), which serves
|
4
|
+
as a public contract about available API resources and object internals.
|
5
|
+
|
6
|
+
This gem(besides the schema) provides a single utility method: the path to the
|
7
|
+
json files.
|
8
|
+
|
9
|
+
gem install fidor_schema
|
10
|
+
|
11
|
+
require 'fidor_schema'
|
12
|
+
Fidor::Schema.path
|
13
|
+
|
14
|
+
Other languages can take advantage of the raw json files.
|
15
|
+
|
16
|
+
## Test
|
17
|
+
|
18
|
+
Install required gems with bundler and go for it:
|
19
|
+
|
20
|
+
bundle install
|
21
|
+
rake spec
|
22
|
+
|
23
|
+
## Field types & formats
|
24
|
+
|
25
|
+
All strings MUST be UTF-8 encoded. Date & date-time values are ISO8601
|
26
|
+
|
27
|
+
Copyright (c) 2014 Fidor AG
|
data/Rakefile
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'fidor_schema_version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = 'fidor_schema'
|
8
|
+
spec.version = Fidor::Schema::VERSION
|
9
|
+
spec.authors = ['Georg Leciejewski']
|
10
|
+
spec.email = 'dev@fidor.de'
|
11
|
+
spec.summary = 'Fidor API - JSON Schema'
|
12
|
+
spec.description = %q{Fidor API description. Using JSON Schema to describe the available objects, their fields and resource links.}
|
13
|
+
spec.homepage = 'https://www.fidor.de'
|
14
|
+
spec.license = 'MIT'
|
15
|
+
|
16
|
+
spec.files = `git ls-files -z`.split("\x0").reject{|i| i[/^docs\//] }
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ['lib']
|
20
|
+
|
21
|
+
spec.add_development_dependency 'bundler', '~> 1.5'
|
22
|
+
spec.add_development_dependency 'rspec'
|
23
|
+
spec.add_development_dependency 'activesupport'
|
24
|
+
spec.add_development_dependency 'json_schema_tools', '>=0.2.6'
|
25
|
+
spec.add_development_dependency 'activemodel' # required by above
|
26
|
+
spec.add_development_dependency 'rake'
|
27
|
+
|
28
|
+
end
|
data/lib/fidor/schema.rb
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Fidor
|
3
|
+
class Schema
|
4
|
+
# Get the path to schema files delivered by this gem.
|
5
|
+
# @example
|
6
|
+
# Fidor::Schema.path # => /home/me/gems/.../fidor_schema/schema
|
7
|
+
#
|
8
|
+
# @param [String] version folder name to use
|
9
|
+
def self.path(version='v1.0')
|
10
|
+
File.expand_path( File.join('../../schema', version), File.dirname(__FILE__))
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/lib/fidor_schema.rb
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
{
|
2
|
+
"type" : "object",
|
3
|
+
"title" : "Account",
|
4
|
+
"name" : "account",
|
5
|
+
"description" : "A fidor bank account.",
|
6
|
+
"properties" : {
|
7
|
+
"id" : {
|
8
|
+
"$ref" : "./base_types/base_types.json#definitions/id"
|
9
|
+
},
|
10
|
+
"account_number" : {
|
11
|
+
"description" : "The bank account number.",
|
12
|
+
"type" : "string",
|
13
|
+
"maxLength" : 10,
|
14
|
+
"readonly" : true
|
15
|
+
},
|
16
|
+
"iban" : {
|
17
|
+
"$ref" : "./base_types/base_types.json#definitions/iban",
|
18
|
+
"readonly" : true
|
19
|
+
},
|
20
|
+
"balance" : {
|
21
|
+
"description" : "Account balance",
|
22
|
+
"type" : "number",
|
23
|
+
"readonly" : true
|
24
|
+
},
|
25
|
+
"balance_available" : {
|
26
|
+
"description" : "Available account balance.",
|
27
|
+
"type" : "number",
|
28
|
+
"readonly" : true
|
29
|
+
},
|
30
|
+
"overdraft" : {
|
31
|
+
"description" : "Available account overdraft",
|
32
|
+
"type" : "number",
|
33
|
+
"readonly" : true
|
34
|
+
},
|
35
|
+
"preauth_amount" : {
|
36
|
+
"description" : "Amount available for pre-authorization.",
|
37
|
+
"type" : "number",
|
38
|
+
"readonly" : true
|
39
|
+
},
|
40
|
+
"cash_flow_per_year" : {
|
41
|
+
"description" : "Amount available for yearly cash flow. This is the limit of funds an account holder has at their disposal without fulfilling Germany KYC requirements.",
|
42
|
+
"type" : "number",
|
43
|
+
"readonly" : true
|
44
|
+
},
|
45
|
+
"is_debit_note_enabled" : {
|
46
|
+
"description" : "Whether this account is authorized to initiate direct debit transactions.",
|
47
|
+
"type" : "boolean",
|
48
|
+
"default" : false,
|
49
|
+
"readonly" : true
|
50
|
+
},
|
51
|
+
"is_trusted" : {
|
52
|
+
"description" : "Indicates if this is an escrow account",
|
53
|
+
"type" : "boolean",
|
54
|
+
"default" : false,
|
55
|
+
"readonly" : true
|
56
|
+
},
|
57
|
+
"is_locked" : {
|
58
|
+
"description" : "Indicates whether the account is locked",
|
59
|
+
"type" : "boolean",
|
60
|
+
"readonly" : true
|
61
|
+
},
|
62
|
+
"currency" : {
|
63
|
+
"$ref" : "./base_types/base_types.json#definitions/currency",
|
64
|
+
"readonly" : true
|
65
|
+
},
|
66
|
+
"customers" : {
|
67
|
+
"description" : "The owners of the account",
|
68
|
+
"type" : "array",
|
69
|
+
"items" : {
|
70
|
+
"type" : "object",
|
71
|
+
"properties" : {
|
72
|
+
"$ref" : "./customer.json#properties"
|
73
|
+
}
|
74
|
+
},
|
75
|
+
"readonly" : true
|
76
|
+
},
|
77
|
+
"created_at" : {
|
78
|
+
"$ref" : "./base_types/base_types.json#definitions/created_at"
|
79
|
+
},
|
80
|
+
"updated_at" : {
|
81
|
+
"$ref" : "./base_types/base_types.json#definitions/updated_at"
|
82
|
+
}
|
83
|
+
},
|
84
|
+
"links" : [
|
85
|
+
{
|
86
|
+
"rel" : "self",
|
87
|
+
"href" : "accounts/{id}"
|
88
|
+
},
|
89
|
+
{
|
90
|
+
"rel" : "instances",
|
91
|
+
"href" : "accounts"
|
92
|
+
},
|
93
|
+
{
|
94
|
+
"rel" : "transactions",
|
95
|
+
"href" : "accounts/{id}/transactions"
|
96
|
+
},
|
97
|
+
{
|
98
|
+
"rel" : "internal_transfers",
|
99
|
+
"href" : "accounts/{id}/internal_transfers"
|
100
|
+
},
|
101
|
+
{
|
102
|
+
"rel" : "sepa_credit_transfers",
|
103
|
+
"href" : "accounts/{id}/sepa_credit_transfers"
|
104
|
+
},
|
105
|
+
{
|
106
|
+
"rel" : "sepa_direct_debits",
|
107
|
+
"href" : "accounts/{id}/sepa_direct_debits"
|
108
|
+
},
|
109
|
+
{
|
110
|
+
"rel" : "batch_transfers",
|
111
|
+
"href" : "accounts/{id}/batch_transfers"
|
112
|
+
},
|
113
|
+
{
|
114
|
+
"rel" : "batch_direct_debit",
|
115
|
+
"href" : "accounts/{id}/batch_direct_debits"
|
116
|
+
}
|
117
|
+
]
|
118
|
+
}
|
@@ -0,0 +1,124 @@
|
|
1
|
+
{
|
2
|
+
"definitions" : {
|
3
|
+
"id" : {
|
4
|
+
"description" : "Unique identifier of the object",
|
5
|
+
"identity" : true,
|
6
|
+
"readonly" : true,
|
7
|
+
"type" : "integer"
|
8
|
+
},
|
9
|
+
"account_id" : {
|
10
|
+
"description" : "Fidor account the transaction belongs to.",
|
11
|
+
"type" : "string",
|
12
|
+
"pattern" : "\\d{8}"
|
13
|
+
},
|
14
|
+
"user_id" : {
|
15
|
+
"description" : "Identifies the user who created this object",
|
16
|
+
"readonly" : true,
|
17
|
+
"type" : "string",
|
18
|
+
"pattern" : "\\d{8}"
|
19
|
+
},
|
20
|
+
"transaction_id" : {
|
21
|
+
"description" : "Identifies a reference to a corresponding transaction",
|
22
|
+
"readonly" : true,
|
23
|
+
"type" : "integer"
|
24
|
+
},
|
25
|
+
"phone" : {
|
26
|
+
"description" : "A phone or fax number, formatted with country code: +49 123 1233213",
|
27
|
+
"type" : "string",
|
28
|
+
"pattern" : "\\+[ 0-9]*"
|
29
|
+
},
|
30
|
+
"email" : {
|
31
|
+
"description" : "Email address",
|
32
|
+
"type" : "string",
|
33
|
+
"format" : "email",
|
34
|
+
"maxLength" : 100
|
35
|
+
},
|
36
|
+
"twitter" : {
|
37
|
+
"description" : "Twitter username",
|
38
|
+
"type" : "string",
|
39
|
+
"pattern" : "^@(\\w){1,15}$"
|
40
|
+
},
|
41
|
+
"created_at" : {
|
42
|
+
"description" : "Creation date-time, never changes.",
|
43
|
+
"format" : "date-time",
|
44
|
+
"type" : "string",
|
45
|
+
"readonly" : true
|
46
|
+
},
|
47
|
+
"updated_at" : {
|
48
|
+
"description" : "Last update date-time.",
|
49
|
+
"format" : "date-time",
|
50
|
+
"type" : "string",
|
51
|
+
"readonly" : true
|
52
|
+
},
|
53
|
+
"external_uid" : {
|
54
|
+
"description" : "Unique ID of the creator of the transaction. In case a uid is reused for a transaction, it is not executed, this mechanism can be used to prevent double bookings in case of network failure or similar event where transaction status is unknown",
|
55
|
+
"type" : "string",
|
56
|
+
"required" : true
|
57
|
+
},
|
58
|
+
"iban" : {
|
59
|
+
"description" : "IBAN",
|
60
|
+
"checksum" : "Checksum is calculated as described in ISO 13616-1, 2 digits MOD97 inserted after the country code",
|
61
|
+
"type" : "string",
|
62
|
+
"maxLength" : 34,
|
63
|
+
"pattern" : "^[A-Z]{2}[0-9]{2}[A-Z0-9]{11,30}$"
|
64
|
+
},
|
65
|
+
"bic" : {
|
66
|
+
"description" : "BIC / Swift code of bank",
|
67
|
+
"type" : "string",
|
68
|
+
"pattern" : "^([A-Z0-9]{8}|[A-Z0-9]{8})$",
|
69
|
+
"maxLength" : 11
|
70
|
+
},
|
71
|
+
"eref" : {
|
72
|
+
"description" : "End-to-end reference.",
|
73
|
+
"type" : "string",
|
74
|
+
"maxLength" : 255
|
75
|
+
},
|
76
|
+
"country" : {
|
77
|
+
"description" : "Country code as defined in ISO3166 alpha2. e.g DE, GB",
|
78
|
+
"type" : "string",
|
79
|
+
"minLength" : 2,
|
80
|
+
"maxLength" : 2
|
81
|
+
},
|
82
|
+
"currency" : {
|
83
|
+
"description" : "Account currency. ISO 4217 alpha-3 - 3 letter upcase e.g EUR",
|
84
|
+
"type" : "string",
|
85
|
+
"maxLength" : 3,
|
86
|
+
"minLength" : 3,
|
87
|
+
"default" : "EUR"
|
88
|
+
},
|
89
|
+
"subject" : {
|
90
|
+
"description" : "Transfer subject (reference)",
|
91
|
+
"type" : "string",
|
92
|
+
"pattern" : "^[A-Za-z0-9_\\.\\, &\\-\\/\\+\\*\\$\\%@üöäÜÖÄ߀]*$"
|
93
|
+
},
|
94
|
+
"amount" : {
|
95
|
+
"description" : "The transferred amount in account currency, two decimal places. Must be greater than 0 e.g. > 0",
|
96
|
+
"type" : "number",
|
97
|
+
"exclusiveMinimum" : true,
|
98
|
+
"minimum" : 0
|
99
|
+
},
|
100
|
+
"transaction_type" : {
|
101
|
+
"description" : "Type of the transaction",
|
102
|
+
"enum" : [
|
103
|
+
"payin_giropay",
|
104
|
+
"payin_paymentnetwork",
|
105
|
+
"payin_credit_note",
|
106
|
+
"payin_debit_note_eze",
|
107
|
+
"payin_debit_note_aba",
|
108
|
+
"payin_credit_note_sepa",
|
109
|
+
"payin_debit_note_sepa_core",
|
110
|
+
"payin_debit_note_sepa_b2b",
|
111
|
+
"payin_fidorpay",
|
112
|
+
"payout_ogone",
|
113
|
+
"payout_paymentnetwork",
|
114
|
+
"payout_credit_note",
|
115
|
+
"payout_debit_note_eze",
|
116
|
+
"payout_credit_note_sepa",
|
117
|
+
"payout_fidorpay",
|
118
|
+
"payout_creditcard",
|
119
|
+
"payout_fee"
|
120
|
+
],
|
121
|
+
"type" : "string"
|
122
|
+
}
|
123
|
+
}
|
124
|
+
}
|
@@ -0,0 +1,140 @@
|
|
1
|
+
{
|
2
|
+
"type" : "object",
|
3
|
+
"title" : "Batch Direct Debit",
|
4
|
+
"name" : "batch_direct_debit",
|
5
|
+
"description" : "A direct debit batch contains multiple direct debits which are processed asynchronously.",
|
6
|
+
"properties" : {
|
7
|
+
"id" : {
|
8
|
+
"$ref" : "./base_types/base_types.json#definitions/id"
|
9
|
+
},
|
10
|
+
"external_uid" : {
|
11
|
+
"$ref" : "./base_types/base_types.json#definitions/external_uid"
|
12
|
+
},
|
13
|
+
"account_id" : {
|
14
|
+
"$ref" : "./base_types/base_types.json#definitions/account_id",
|
15
|
+
"required" : true
|
16
|
+
},
|
17
|
+
"user_id" : {
|
18
|
+
"$ref" : "./base_types/base_types.json#definitions/user_id"
|
19
|
+
},
|
20
|
+
"sepa_direct_debits" : {
|
21
|
+
"description" : "The direct_debits to process.",
|
22
|
+
"type" : "array",
|
23
|
+
"required" : false,
|
24
|
+
"items" : {
|
25
|
+
"type" : "object",
|
26
|
+
"properties" : {
|
27
|
+
"$ref" : "./sepa_direct_debit.json#properties"
|
28
|
+
}
|
29
|
+
}
|
30
|
+
},
|
31
|
+
"sepa_direct_debit_ids" : {
|
32
|
+
"description" : "ids of successfully executed direct debit transactions",
|
33
|
+
"type" : "array",
|
34
|
+
"items" : {
|
35
|
+
"$ref" : "./base_types/base_types.json#definitions/id"
|
36
|
+
}
|
37
|
+
},
|
38
|
+
"sepa_direct_debit_errors" : {
|
39
|
+
"description" : "contains a list of errors encountered in nested debits contained in this batch. Debits are identified by external_uid",
|
40
|
+
"type" : "array",
|
41
|
+
"items" : {
|
42
|
+
"type" : "object",
|
43
|
+
"properties" : {
|
44
|
+
"external_uid" : {
|
45
|
+
"type" : "string"
|
46
|
+
},
|
47
|
+
"error" : {
|
48
|
+
"type" : "object",
|
49
|
+
"properties" : {
|
50
|
+
"$ref" : "./error.json#properties"
|
51
|
+
}
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
},
|
56
|
+
"number_of_debits" : {
|
57
|
+
"description" : "count of debits transactions received in this batch",
|
58
|
+
"readonly" : true,
|
59
|
+
"type" : "integer"
|
60
|
+
},
|
61
|
+
"state" : {
|
62
|
+
"description" : "State of the batch operation. received: We received the batch | processing: Batch is currently being processed | failure: An error occurred during execution in at least one of the transfers. In this case you should check the transfers. | success: batch successfully processed",
|
63
|
+
"enum" : [
|
64
|
+
"received",
|
65
|
+
"processing",
|
66
|
+
"success",
|
67
|
+
"failure"
|
68
|
+
],
|
69
|
+
"readonly" : true,
|
70
|
+
"type" : "string"
|
71
|
+
},
|
72
|
+
"success_url" : {
|
73
|
+
"description" : "Url receiving a POST with the batch object after processing is finished.",
|
74
|
+
"type" : "string",
|
75
|
+
"format" : "uri"
|
76
|
+
},
|
77
|
+
"created_at" : {
|
78
|
+
"$ref" : "./base_types/base_types.json#definitions/created_at"
|
79
|
+
},
|
80
|
+
"updated_at" : {
|
81
|
+
"$ref" : "./base_types/base_types.json#definitions/updated_at"
|
82
|
+
}
|
83
|
+
},
|
84
|
+
"links" : [
|
85
|
+
{
|
86
|
+
"rel" : "self",
|
87
|
+
"href" : "batch_direct_debits/{id}"
|
88
|
+
},
|
89
|
+
{
|
90
|
+
"rel" : "instances",
|
91
|
+
"href" : "batch_direct_debits",
|
92
|
+
"properties" : {
|
93
|
+
"filter[created_at_from]" : {
|
94
|
+
"title" : "Creation date filter from >= date",
|
95
|
+
"format" : "date",
|
96
|
+
"type" : "string"
|
97
|
+
},
|
98
|
+
"filter[created_at_to]" : {
|
99
|
+
"title" : "Creation date filter to <= date",
|
100
|
+
"format" : "date",
|
101
|
+
"type" : "string"
|
102
|
+
},
|
103
|
+
"filter[states]" : {
|
104
|
+
"title" : "Filter by single or multiple csv delimited states",
|
105
|
+
"enum" : [
|
106
|
+
"received",
|
107
|
+
"processing",
|
108
|
+
"success",
|
109
|
+
"failure"
|
110
|
+
],
|
111
|
+
"type" : "string"
|
112
|
+
},
|
113
|
+
"page" : {
|
114
|
+
"title" : "Page",
|
115
|
+
"description" : "In paginated results set the page to look for",
|
116
|
+
"type" : "number"
|
117
|
+
},
|
118
|
+
"per_page" : {
|
119
|
+
"title" : "Per page",
|
120
|
+
"description" : "Results per page. Default is 10, max is 100",
|
121
|
+
"type" : "number"
|
122
|
+
},
|
123
|
+
"sort" : {
|
124
|
+
"title" : "Sort",
|
125
|
+
"enum" : [
|
126
|
+
"ASC",
|
127
|
+
"DESC"
|
128
|
+
],
|
129
|
+
"description" : "Sort the results in ASC or DESC",
|
130
|
+
"type" : "string"
|
131
|
+
}
|
132
|
+
}
|
133
|
+
},
|
134
|
+
{
|
135
|
+
"rel" : "create",
|
136
|
+
"href" : "batch_direct_debits",
|
137
|
+
"method" : "POST"
|
138
|
+
}
|
139
|
+
]
|
140
|
+
}
|
@@ -0,0 +1,179 @@
|
|
1
|
+
{
|
2
|
+
"type" : "object",
|
3
|
+
"title" : "Batch Transfer",
|
4
|
+
"name" : "batch_transfer",
|
5
|
+
"description" : "A transfer batch contains multiple transfers which are processed asynchronously.",
|
6
|
+
"properties" : {
|
7
|
+
"id" : {
|
8
|
+
"$ref" : "./base_types/base_types.json#definitions/id"
|
9
|
+
},
|
10
|
+
"external_uid" : {
|
11
|
+
"$ref" : "./base_types/base_types.json#definitions/external_uid"
|
12
|
+
},
|
13
|
+
"account_id" : {
|
14
|
+
"$ref" : "./base_types/base_types.json#definitions/account_id",
|
15
|
+
"required" : true
|
16
|
+
},
|
17
|
+
"user_id" : {
|
18
|
+
"$ref" : "./base_types/base_types.json#definitions/user_id"
|
19
|
+
},
|
20
|
+
"sepa_credit_transfers" : {
|
21
|
+
"description" : "SEPA credit transfers to process",
|
22
|
+
"type" : "array",
|
23
|
+
"items" : {
|
24
|
+
"type" : "object",
|
25
|
+
"properties" : {
|
26
|
+
"$ref" : "./sepa_credit_transfer.json#properties"
|
27
|
+
}
|
28
|
+
}
|
29
|
+
},
|
30
|
+
"internal_transfers" : {
|
31
|
+
"description" : "Interal transfers to process",
|
32
|
+
"type" : "array",
|
33
|
+
"items" : {
|
34
|
+
"type" : "object",
|
35
|
+
"properties" : {
|
36
|
+
"$ref" : "./internal_transfer.json#properties"
|
37
|
+
}
|
38
|
+
}
|
39
|
+
},
|
40
|
+
"sepa_credit_transfer_ids" : {
|
41
|
+
"description" : "ids of successfully executed SEPA credit transfers",
|
42
|
+
"type" : "array",
|
43
|
+
"items" : {
|
44
|
+
"$ref" : "./base_types/base_types.json#definitions/id"
|
45
|
+
}
|
46
|
+
},
|
47
|
+
"internal_transfer_ids" : {
|
48
|
+
"description" : "ids of successfully executed internal transfers",
|
49
|
+
"type" : "array",
|
50
|
+
"items" : {
|
51
|
+
"$ref" : "./base_types/base_types.json#definitions/id"
|
52
|
+
}
|
53
|
+
},
|
54
|
+
"sepa_credit_transfer_errors" : {
|
55
|
+
"description" : "contains a list of errors encountered in nested debits contained in this batch. Transfers are identified by external_uid contained in the original transfer json",
|
56
|
+
"type" : "array",
|
57
|
+
"items" : {
|
58
|
+
"type" : "object",
|
59
|
+
"properties" : {
|
60
|
+
"external_uid" : {
|
61
|
+
"type" : "string"
|
62
|
+
},
|
63
|
+
"error" : {
|
64
|
+
"type" : "object",
|
65
|
+
"properties" : {
|
66
|
+
"$ref" : "./error.json#properties"
|
67
|
+
}
|
68
|
+
}
|
69
|
+
}
|
70
|
+
}
|
71
|
+
},
|
72
|
+
"internal_transfer_errors" : {
|
73
|
+
"description" : "contains a list of errors encountered in nested debits contained in this batch. Transfers are identified by external_uid contained in the original transfer json",
|
74
|
+
"type" : "array",
|
75
|
+
"items" : {
|
76
|
+
"type" : "object",
|
77
|
+
"properties" : {
|
78
|
+
"external_uid" : {
|
79
|
+
"type" : "string"
|
80
|
+
},
|
81
|
+
"error" : {
|
82
|
+
"type" : "object",
|
83
|
+
"properties" : {
|
84
|
+
"$ref" : "./error.json#properties"
|
85
|
+
}
|
86
|
+
}
|
87
|
+
}
|
88
|
+
}
|
89
|
+
},
|
90
|
+
"number_of_transfers" : {
|
91
|
+
"description" : "count of transfers (internal and sepa) transactions received in this batch",
|
92
|
+
"readonly" : true,
|
93
|
+
"type" : "integer"
|
94
|
+
},
|
95
|
+
"state" : {
|
96
|
+
"description" : "State of the batch operation. received: We received the batch | processing: Batch is currently being processed | failure: An error occurred during execution of the batch. In this case you should check the transfers. | success: Batch execution has been completed.",
|
97
|
+
"enum" : [
|
98
|
+
"received",
|
99
|
+
"processing",
|
100
|
+
"success",
|
101
|
+
"failure"
|
102
|
+
],
|
103
|
+
"readonly" : true,
|
104
|
+
"type" : "string"
|
105
|
+
},
|
106
|
+
"success_url" : {
|
107
|
+
"description" : "Url receiving a POST with the batch object after processing is finished.",
|
108
|
+
"type" : "string",
|
109
|
+
"format" : "uri"
|
110
|
+
},
|
111
|
+
"created_at" : {
|
112
|
+
"$ref" : "./base_types/base_types.json#definitions/created_at"
|
113
|
+
},
|
114
|
+
"updated_at" : {
|
115
|
+
"$ref" : "./base_types/base_types.json#definitions/updated_at"
|
116
|
+
}
|
117
|
+
},
|
118
|
+
"links" : [
|
119
|
+
{
|
120
|
+
"rel" : "self",
|
121
|
+
"href" : "batch_transfers/{id}"
|
122
|
+
},
|
123
|
+
{
|
124
|
+
"rel" : "instances",
|
125
|
+
"href" : "batch_transfers",
|
126
|
+
"properties" : {
|
127
|
+
"filter[account_ids]" : {
|
128
|
+
"title" : "Find transfers belonging to the given account ids. Single id or multiple ids comma-separated.",
|
129
|
+
"format" : "date",
|
130
|
+
"type" : "string"
|
131
|
+
},
|
132
|
+
"filter[created_at_from]" : {
|
133
|
+
"title" : "Creation date filter from >= date",
|
134
|
+
"format" : "date",
|
135
|
+
"type" : "string"
|
136
|
+
},
|
137
|
+
"filter[created_at_to]" : {
|
138
|
+
"title" : "Creation date filter to <= date",
|
139
|
+
"format" : "date",
|
140
|
+
"type" : "string"
|
141
|
+
},
|
142
|
+
"filter[states]" : {
|
143
|
+
"title" : "Filter by single or multiple csv delimited states",
|
144
|
+
"enum" : [
|
145
|
+
"received",
|
146
|
+
"processing",
|
147
|
+
"success",
|
148
|
+
"failure"
|
149
|
+
],
|
150
|
+
"type" : "string"
|
151
|
+
},
|
152
|
+
"page" : {
|
153
|
+
"title" : "Page",
|
154
|
+
"description" : "In paginated results set the page to look for",
|
155
|
+
"type" : "number"
|
156
|
+
},
|
157
|
+
"per_page" : {
|
158
|
+
"title" : "Per page",
|
159
|
+
"description" : "Results per page. Default is 10, max is 100",
|
160
|
+
"type" : "number"
|
161
|
+
},
|
162
|
+
"sort" : {
|
163
|
+
"title" : "Sort",
|
164
|
+
"enum" : [
|
165
|
+
"ASC",
|
166
|
+
"DESC"
|
167
|
+
],
|
168
|
+
"description" : "Sort the results in ASC or DESC",
|
169
|
+
"type" : "string"
|
170
|
+
}
|
171
|
+
}
|
172
|
+
},
|
173
|
+
{
|
174
|
+
"rel" : "create",
|
175
|
+
"href" : "batch_transfers",
|
176
|
+
"method" : "POST"
|
177
|
+
}
|
178
|
+
]
|
179
|
+
}
|