citypay_api_client 1.1.1 → 1.1.2
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 +4 -4
- data/README.md +15 -14
- data/citypay_api_client.gemspec +4 -3
- data/docs/AirlineAdvice.md +1 -1
- data/docs/AuthRequest.md +3 -1
- data/docs/AuthResponse.md +5 -1
- data/docs/AuthorisationAndPaymentApi.md +300 -9
- data/docs/BatchProcessingApi.md +15 -11
- data/docs/BatchTransactionResultModel.md +5 -1
- data/docs/Card.md +1 -1
- data/docs/CardHolderAccountApi.md +64 -9
- data/docs/ChargeRequest.md +2 -0
- data/docs/ContactDetails.md +11 -11
- data/docs/DirectPostApi.md +40 -16
- data/docs/DirectPostRequest.md +3 -1
- data/docs/OperationalFunctionsApi.md +28 -8
- data/docs/PaylinkApi.md +249 -73
- data/docs/PaylinkCustomParam.md +3 -1
- data/docs/PaylinkFieldGuardModel.md +1 -1
- data/docs/PaylinkTokenRequestModel.md +4 -0
- data/docs/RegisterCard.md +1 -1
- data/docs/ThreeDSecure.md +1 -1
- data/docs/TokenisationResponseModel.md +2 -2
- data/docs/images/3dsv1-challenge.png +0 -0
- data/docs/images/3dsv2-challenge.png +0 -0
- data/docs/images/3dsv2-frictionless.png +0 -0
- data/docs/images/3dsv2-method-challenge.png +0 -0
- data/docs/images/3dsv2-method-frictionless.png +0 -0
- data/docs/images/3dsv2-no3d.png +0 -0
- data/docs/images/citypay-logo.svg +1 -0
- data/docs/images/direct-post-flow.png +0 -0
- data/docs/images/favicon.ico +0 -0
- data/docs/images/header.png +0 -0
- data/docs/images/logo.ai +1913 -4
- data/docs/images/logo.png +0 -0
- data/docs/images/logo.svg +1 -0
- data/docs/images/merchant-BPS-workflow.png +0 -0
- data/docs/images/paylink-field-guards.png +0 -0
- data/lib/.DS_Store +0 -0
- data/lib/citypay_api_client/api/authorisation_and_payment_api__.rb +4 -4
- data/lib/citypay_api_client/api/batch_processing_api__.rb +11 -11
- data/lib/citypay_api_client/api/card_holder_account_api__.rb +2 -2
- data/lib/citypay_api_client/api/direct_post_api__.rb +5 -5
- data/lib/citypay_api_client/api/operational_functions_api__.rb +3 -3
- data/lib/citypay_api_client/api/paylink_api__.rb +74 -74
- data/lib/citypay_api_client/api_client.rb +24 -22
- data/lib/citypay_api_client/api_error.rb +3 -2
- data/lib/citypay_api_client/configuration.rb +28 -9
- data/lib/citypay_api_client/models/account_create.rb +17 -20
- data/lib/citypay_api_client/models/account_status.rb +15 -20
- data/lib/citypay_api_client/models/acknowledgement.rb +27 -24
- data/lib/citypay_api_client/models/acl_check_request.rb +17 -20
- data/lib/citypay_api_client/models/acl_check_response_model.rb +15 -20
- data/lib/citypay_api_client/models/airline_advice.rb +45 -29
- data/lib/citypay_api_client/models/airline_segment.rb +35 -22
- data/lib/citypay_api_client/models/auth_reference.rb +41 -26
- data/lib/citypay_api_client/models/auth_references.rb +15 -20
- data/lib/citypay_api_client/models/auth_request.rb +66 -29
- data/lib/citypay_api_client/models/auth_response.rb +45 -22
- data/lib/citypay_api_client/models/authen_required.rb +15 -20
- data/lib/citypay_api_client/models/batch.rb +24 -21
- data/lib/citypay_api_client/models/batch_report_request.rb +23 -22
- data/lib/citypay_api_client/models/batch_report_response_model.rb +27 -20
- data/lib/citypay_api_client/models/batch_transaction.rb +25 -22
- data/lib/citypay_api_client/models/batch_transaction_result_model.rb +53 -22
- data/lib/citypay_api_client/models/bin.rb +15 -20
- data/lib/citypay_api_client/models/bin_lookup.rb +17 -20
- data/lib/citypay_api_client/models/c_res_auth_request.rb +15 -20
- data/lib/citypay_api_client/models/capture_request.rb +27 -22
- data/lib/citypay_api_client/models/card.rb +33 -26
- data/lib/citypay_api_client/models/card_holder_account.rb +19 -20
- data/lib/citypay_api_client/models/card_status.rb +15 -20
- data/lib/citypay_api_client/models/charge_request.rb +66 -29
- data/lib/citypay_api_client/models/check_batch_status.rb +23 -22
- data/lib/citypay_api_client/models/check_batch_status_response.rb +15 -20
- data/lib/citypay_api_client/models/contact_details.rb +77 -42
- data/lib/citypay_api_client/models/decision.rb +15 -20
- data/lib/citypay_api_client/models/direct_post_request.rb +66 -29
- data/lib/citypay_api_client/models/direct_token_auth_request.rb +15 -20
- data/lib/citypay_api_client/models/domain_key_check_request.rb +17 -20
- data/lib/citypay_api_client/models/domain_key_request.rb +19 -20
- data/lib/citypay_api_client/models/domain_key_response.rb +25 -22
- data/lib/citypay_api_client/models/error.rb +27 -24
- data/lib/citypay_api_client/models/event_data_model.rb +15 -20
- data/lib/citypay_api_client/models/exists.rb +17 -20
- data/lib/citypay_api_client/models/external_mpi.rb +39 -24
- data/lib/citypay_api_client/models/list_merchants_response.rb +21 -22
- data/lib/citypay_api_client/models/mcc6012.rb +15 -20
- data/lib/citypay_api_client/models/merchant.rb +15 -20
- data/lib/citypay_api_client/models/pa_res_auth_request.rb +19 -20
- data/lib/citypay_api_client/models/paylink_address.rb +52 -29
- data/lib/citypay_api_client/models/paylink_adjustment_request.rb +25 -22
- data/lib/citypay_api_client/models/paylink_attachment_request.rb +19 -20
- data/lib/citypay_api_client/models/paylink_attachment_result.rb +19 -20
- data/lib/citypay_api_client/models/paylink_bill_payment_token_request.rb +17 -20
- data/lib/citypay_api_client/models/paylink_card_holder.rb +30 -23
- data/lib/citypay_api_client/models/paylink_cart.rb +15 -20
- data/lib/citypay_api_client/models/paylink_cart_item_model.rb +15 -20
- data/lib/citypay_api_client/models/paylink_config.rb +15 -20
- data/lib/citypay_api_client/models/paylink_custom_param.rb +29 -22
- data/lib/citypay_api_client/models/paylink_email_notification_path.rb +17 -20
- data/lib/citypay_api_client/models/paylink_error_code.rb +19 -20
- data/lib/citypay_api_client/models/paylink_field_guard_model.rb +16 -21
- data/lib/citypay_api_client/models/paylink_part_payments.rb +15 -20
- data/lib/citypay_api_client/models/paylink_sms_notification_path.rb +17 -20
- data/lib/citypay_api_client/models/paylink_state_event.rb +15 -20
- data/lib/citypay_api_client/models/paylink_token_created.rb +21 -20
- data/lib/citypay_api_client/models/paylink_token_request_model.rb +75 -22
- data/lib/citypay_api_client/models/paylink_token_status.rb +15 -20
- data/lib/citypay_api_client/models/paylink_token_status_change_request.rb +19 -20
- data/lib/citypay_api_client/models/paylink_token_status_change_response.rb +17 -20
- data/lib/citypay_api_client/models/paylink_ui.rb +15 -20
- data/lib/citypay_api_client/models/ping.rb +21 -22
- data/lib/citypay_api_client/models/process_batch_request.rb +27 -22
- data/lib/citypay_api_client/models/process_batch_response.rb +17 -20
- data/lib/citypay_api_client/models/refund_request.rb +28 -21
- data/lib/citypay_api_client/models/register_card.rb +27 -22
- data/lib/citypay_api_client/models/request_challenged.rb +15 -20
- data/lib/citypay_api_client/models/retrieve_request.rb +23 -22
- data/lib/citypay_api_client/models/three_d_secure.rb +16 -21
- data/lib/citypay_api_client/models/tokenisation_response_model.rb +23 -24
- data/lib/citypay_api_client/models/void_request.rb +23 -22
- data/lib/citypay_api_client/version.rb +3 -3
- data/lib/citypay_api_client.rb +2 -2
- data/spec/.DS_Store +0 -0
- data/spec/it_api_sandbox_spec.rb +5 -11
- data/spec/models/account_create_spec.rb +1 -2
- data/spec/models/account_status_spec.rb +2 -2
- data/spec/models/airline_advice_spec.rb +0 -2
- data/spec/models/airline_segment_spec.rb +0 -2
- data/spec/models/auth_request_spec.rb +0 -2
- data/spec/models/auth_response_spec.rb +75 -30
- data/spec/models/batch_report_request_spec.rb +0 -2
- data/spec/models/batch_report_response_model_spec.rb +0 -2
- data/spec/models/batch_spec.rb +0 -2
- data/spec/models/batch_transaction_result_model_spec.rb +0 -2
- data/spec/models/batch_transaction_spec.rb +0 -2
- data/spec/models/bin_lookup_spec.rb +0 -2
- data/spec/models/capture_request_spec.rb +0 -2
- data/spec/models/card_holder_account_spec.rb +0 -2
- data/spec/models/charge_request_spec.rb +0 -2
- data/spec/models/direct_post_request_spec.rb +0 -2
- data/spec/models/domain_key_check_request_spec.rb +0 -2
- data/spec/models/paylink_token_request_model_spec.rb +0 -2
- data/spec/models/process_batch_request_spec.rb +0 -2
- data/spec/models/refund_request_spec.rb +0 -2
- data/spec/models/register_card_spec.rb +0 -2
- data/spec/spec_helper.rb +2 -2
- metadata +25 -12
- data/docs/OperationalApi.md +0 -214
- data/docs/PaymentProcessingApi.md +0 -559
data/docs/BatchProcessingApi.md
CHANGED
@@ -5,7 +5,7 @@ All URIs are relative to *https://api.citypay.com*
|
|
5
5
|
| Method | HTTP request | Description |
|
6
6
|
| ------ | ------------ | ----------- |
|
7
7
|
| [**batch_process_request**](BatchProcessingApi.md#batch_process_request) | **POST** /v6/batch/process | Batch Process Request |
|
8
|
-
| [**
|
8
|
+
| [**batch_retrieve_request**](BatchProcessingApi.md#batch_retrieve_request) | **POST** /v6/batch/retrieve | BatchReportRequest |
|
9
9
|
| [**check_batch_status_request**](BatchProcessingApi.md#check_batch_status_request) | **POST** /v6/batch/status | CheckBatchStatus |
|
10
10
|
|
11
11
|
|
@@ -15,7 +15,11 @@ All URIs are relative to *https://api.citypay.com*
|
|
15
15
|
|
16
16
|
Batch Process Request
|
17
17
|
|
18
|
-
A batch process request is used to start the batch process workflow by uploading batch
|
18
|
+
A batch process request is used to start the batch process workflow by uploading batch
|
19
|
+
data and initialising a new batch for processing. Once validated the batch will be queued
|
20
|
+
for processing and further updates can be received by a subsequent call to retrieve the batch
|
21
|
+
status.
|
22
|
+
|
19
23
|
|
20
24
|
### Examples
|
21
25
|
|
@@ -77,13 +81,13 @@ end
|
|
77
81
|
- **Accept**: application/json, text/xml
|
78
82
|
|
79
83
|
|
80
|
-
##
|
84
|
+
## batch_retrieve_request
|
81
85
|
|
82
|
-
> <BatchReportResponseModel>
|
86
|
+
> <BatchReportResponseModel> batch_retrieve_request(batch_report_request)
|
83
87
|
|
84
88
|
BatchReportRequest
|
85
89
|
|
86
|
-
The
|
90
|
+
The report for a given batch.
|
87
91
|
|
88
92
|
### Examples
|
89
93
|
|
@@ -100,28 +104,28 @@ batch_report_request = CityPayApiClient::BatchReportRequest.new({batch_id: 35})
|
|
100
104
|
|
101
105
|
begin
|
102
106
|
# BatchReportRequest
|
103
|
-
result = api_instance.
|
107
|
+
result = api_instance.batch_retrieve_request(batch_report_request)
|
104
108
|
p result
|
105
109
|
rescue CityPayApiClient::ApiError => e
|
106
|
-
puts "Error when calling BatchProcessingApi->
|
110
|
+
puts "Error when calling BatchProcessingApi->batch_retrieve_request: #{e}"
|
107
111
|
end
|
108
112
|
```
|
109
113
|
|
110
|
-
#### Using the
|
114
|
+
#### Using the batch_retrieve_request_with_http_info variant
|
111
115
|
|
112
116
|
This returns an Array which contains the response data, status code and headers.
|
113
117
|
|
114
|
-
> <Array(<BatchReportResponseModel>, Integer, Hash)>
|
118
|
+
> <Array(<BatchReportResponseModel>, Integer, Hash)> batch_retrieve_request_with_http_info(batch_report_request)
|
115
119
|
|
116
120
|
```ruby
|
117
121
|
begin
|
118
122
|
# BatchReportRequest
|
119
|
-
data, status_code, headers = api_instance.
|
123
|
+
data, status_code, headers = api_instance.batch_retrieve_request_with_http_info(batch_report_request)
|
120
124
|
p status_code # => 2xx
|
121
125
|
p headers # => { ... }
|
122
126
|
p data # => <BatchReportResponseModel>
|
123
127
|
rescue CityPayApiClient::ApiError => e
|
124
|
-
puts "Error when calling BatchProcessingApi->
|
128
|
+
puts "Error when calling BatchProcessingApi->batch_retrieve_request_with_http_info: #{e}"
|
125
129
|
end
|
126
130
|
```
|
127
131
|
|
@@ -14,7 +14,9 @@
|
|
14
14
|
| **message** | **String** | A response message pertaining to the transaction. | |
|
15
15
|
| **result** | **Integer** | An integer result that indicates the outcome of the transaction. The Code value below maps to the result value <table> <tr> <th>Code</th> <th>Abbrev</th> <th>Description</th> </tr> <tr><td>0</td><td>Declined</td><td>Declined</td></tr> <tr><td>1</td><td>Accepted</td><td>Accepted</td></tr> <tr><td>2</td><td>Rejected</td><td>Rejected</td></tr> <tr><td>3</td><td>Not Attempted</td><td>Not Attempted</td></tr> <tr><td>4</td><td>Referred</td><td>Referred</td></tr> <tr><td>5</td><td>PinRetry</td><td>Perform PIN Retry</td></tr> <tr><td>6</td><td>ForSigVer</td><td>Force Signature Verification</td></tr> <tr><td>7</td><td>Hold</td><td>Hold</td></tr> <tr><td>8</td><td>SecErr</td><td>Security Error</td></tr> <tr><td>9</td><td>CallAcq</td><td>Call Acquirer</td></tr> <tr><td>10</td><td>DNH</td><td>Do Not Honour</td></tr> <tr><td>11</td><td>RtnCrd</td><td>Retain Card</td></tr> <tr><td>12</td><td>ExprdCrd</td><td>Expired Card</td></tr> <tr><td>13</td><td>InvldCrd</td><td>Invalid Card No</td></tr> <tr><td>14</td><td>PinExcd</td><td>Pin Tries Exceeded</td></tr> <tr><td>15</td><td>PinInvld</td><td>Pin Invalid</td></tr> <tr><td>16</td><td>AuthReq</td><td>Authentication Required</td></tr> <tr><td>17</td><td>AuthenFail</td><td>Authentication Failed</td></tr> <tr><td>18</td><td>Verified</td><td>Card Verified</td></tr> <tr><td>19</td><td>Cancelled</td><td>Cancelled</td></tr> <tr><td>20</td><td>Un</td><td>Unknown</td></tr> <tr><td>21</td><td>Challenged</td><td>Challenged</td></tr> <tr><td>22</td><td>Decoupled</td><td>Decoupled</td></tr> <tr><td>23</td><td>Denied</td><td>Permission Denied</td></tr> </table> | |
|
16
16
|
| **result_code** | **String** | A result code of the transaction identifying the result of the transaction for success, rejection or decline. | |
|
17
|
-
| **scheme** | **String** |
|
17
|
+
| **scheme** | **String** | The name of the card scheme of the transaction that processed the transaction such as Visa or MasterCard. | [optional] |
|
18
|
+
| **scheme_id** | **String** | The name of the card scheme of the transaction such as VI or MC. | [optional] |
|
19
|
+
| **scheme_logo** | **String** | A url containing a logo of the card scheme. | [optional] |
|
18
20
|
| **transno** | **Integer** | The resulting transaction number, ordered incrementally from 1 for every merchant_id. The value will default to less than 1 for transactions that do not have a transaction number issued. | [optional] |
|
19
21
|
|
20
22
|
## Example
|
@@ -34,6 +36,8 @@ instance = CityPayApiClient::BatchTransactionResultModel.new(
|
|
34
36
|
result: 1,
|
35
37
|
result_code: 0,
|
36
38
|
scheme: Visa,
|
39
|
+
scheme_id: MC,
|
40
|
+
scheme_logo: https://cdn.citypay.com/img/cs/visa-logo.svg,
|
37
41
|
transno: 78416
|
38
42
|
)
|
39
43
|
```
|
data/docs/Card.md
CHANGED
@@ -22,7 +22,9 @@ All URIs are relative to *https://api.citypay.com*
|
|
22
22
|
|
23
23
|
Card Deletion
|
24
24
|
|
25
|
-
Deletes a card from the account. The card will be marked for deletion before a subsequent
|
25
|
+
Deletes a card from the account. The card will be marked for deletion before a subsequent
|
26
|
+
purge will clear the card permanently.
|
27
|
+
|
26
28
|
|
27
29
|
### Examples
|
28
30
|
|
@@ -92,7 +94,15 @@ end
|
|
92
94
|
|
93
95
|
Card Registration
|
94
96
|
|
95
|
-
Allows for a card to be registered for the account. The card will be added for future
|
97
|
+
Allows for a card to be registered for the account. The card will be added for future
|
98
|
+
processing and will be available as a tokenised value for future processing.
|
99
|
+
|
100
|
+
The card will be validated for
|
101
|
+
|
102
|
+
0. Being a valid card number (luhn check)
|
103
|
+
0. Having a valid expiry date
|
104
|
+
0. Being a valid bin value.
|
105
|
+
|
96
106
|
|
97
107
|
### Examples
|
98
108
|
|
@@ -106,7 +116,7 @@ end
|
|
106
116
|
|
107
117
|
api_instance = CityPayApiClient::CardHolderAccountApi.new
|
108
118
|
accountid = 'accountid_example' # String | The account id that refers to the customer's account no. This value will have been provided when setting up the card holder account.
|
109
|
-
register_card = CityPayApiClient::RegisterCard.new({cardnumber: '4000 0000 0000 0002', expmonth: 9, expyear:
|
119
|
+
register_card = CityPayApiClient::RegisterCard.new({cardnumber: '4000 0000 0000 0002', expmonth: 9, expyear: 2027}) # RegisterCard |
|
110
120
|
|
111
121
|
begin
|
112
122
|
# Card Registration
|
@@ -162,7 +172,14 @@ end
|
|
162
172
|
|
163
173
|
Card Status
|
164
174
|
|
165
|
-
Updates the status of a card for processing. The following values are available
|
175
|
+
Updates the status of a card for processing. The following values are available
|
176
|
+
|
177
|
+
| Status | Description |
|
178
|
+
|--------|-------------|
|
179
|
+
| Active | The card is active for processing and can be used for charging against with a valid token |
|
180
|
+
| Inactive | The card is inactive for processing and cannot be used for processing, it will require reactivation before being used to charge |
|
181
|
+
| Expired | The card has expired either due to the expiry date no longer being valid or due to a replacement card being issued |
|
182
|
+
|
166
183
|
|
167
184
|
### Examples
|
168
185
|
|
@@ -372,7 +389,9 @@ end
|
|
372
389
|
|
373
390
|
Account Deletion
|
374
391
|
|
375
|
-
Allows for the deletion of an account. The account will marked for deletion and subsequent purging. No further
|
392
|
+
Allows for the deletion of an account. The account will marked for deletion and subsequent purging. No further
|
393
|
+
transactions will be alowed to be processed or actioned against this account.
|
394
|
+
|
376
395
|
|
377
396
|
### Examples
|
378
397
|
|
@@ -440,7 +459,8 @@ end
|
|
440
459
|
|
441
460
|
Account Exists
|
442
461
|
|
443
|
-
Checks that an account exists and is active by providing the account id as a url parameter.
|
462
|
+
Checks that an account exists and is active by providing the account id as a url parameter.
|
463
|
+
|
444
464
|
|
445
465
|
### Examples
|
446
466
|
|
@@ -508,7 +528,13 @@ end
|
|
508
528
|
|
509
529
|
Account Retrieval
|
510
530
|
|
511
|
-
Allows for the retrieval of a card holder account for the given `id`. Should duplicate accounts exist
|
531
|
+
Allows for the retrieval of a card holder account for the given `id`. Should duplicate accounts exist
|
532
|
+
for the same `id`, the first account created with that `id` will be returned.
|
533
|
+
|
534
|
+
The account can be used for tokenisation processing by listing all cards assigned to the account.
|
535
|
+
The returned cards will include all `active`, `inactive` and `expired` cards. This can be used to
|
536
|
+
enable a card holder to view their wallet and make constructive choices on which card to use.
|
537
|
+
|
512
538
|
|
513
539
|
### Examples
|
514
540
|
|
@@ -576,7 +602,13 @@ end
|
|
576
602
|
|
577
603
|
Account Status
|
578
604
|
|
579
|
-
Updates the status of an account. An account can have the following statuses applied
|
605
|
+
Updates the status of an account. An account can have the following statuses applied
|
606
|
+
|
607
|
+
| Status | Description |
|
608
|
+
|--------|-------------|
|
609
|
+
| Active | The account is active for processing |
|
610
|
+
| Disabled | The account has been disabled and cannot be used for processing. The account will require reactivation to continue procesing |
|
611
|
+
|
580
612
|
|
581
613
|
### Examples
|
582
614
|
|
@@ -646,7 +678,30 @@ end
|
|
646
678
|
|
647
679
|
Charge
|
648
680
|
|
649
|
-
A charge process obtains an authorisation using a tokenised value which represents a stored card
|
681
|
+
A charge process obtains an authorisation using a tokenised value which represents a stored card
|
682
|
+
on a card holder account.
|
683
|
+
A card must previously be registered by calling `/account-register-card` with the card details
|
684
|
+
or retrieved using `/account-retrieve`
|
685
|
+
|
686
|
+
Tokens are generated whenever a previously registered list of cards are retrieved. Each token has, by design a
|
687
|
+
relatively short time to live of 30 minutes. This is both to safe guard the merchant and card holder from
|
688
|
+
replay attacks. Tokens are also restricted to your account, preventing malicious actors from stealing details
|
689
|
+
for use elsewhere.
|
690
|
+
|
691
|
+
If a token is reused after it has expired it will be rejected and a new token will be required.
|
692
|
+
|
693
|
+
Tokenisation can be used for
|
694
|
+
|
695
|
+
- repeat authorisations on a previously stored card
|
696
|
+
- easy authorisations just requiring CSC values to be entered
|
697
|
+
- can be used for credential on file style payments
|
698
|
+
- can require full 3-D Secure authentication to retain the liability shift
|
699
|
+
- wallet style usage
|
700
|
+
|
701
|
+
|
702
|
+
_Should an account be used with 3DSv2, the card holder name should also be stored alongside the card as this is a
|
703
|
+
required field with both Visa and MasterCard for risk analysis._.
|
704
|
+
|
650
705
|
|
651
706
|
### Examples
|
652
707
|
|
data/docs/ChargeRequest.md
CHANGED
@@ -15,6 +15,7 @@
|
|
15
15
|
| **initiation** | **String** | Transactions charged using the API are defined as: **Cardholder Initiated**: A _cardholder initiated transaction_ (CIT) is where the cardholder selects the card for use for a purchase using previously stored details. An example would be a customer buying an item from your website after being present with their saved card details at checkout. **Merchant Intiated**: A _merchant initiated transaction_ (MIT) is an authorisation initiated where you as the merchant submit a cardholders previously stored details without the cardholder's participation. An example would be a subscription to a membership scheme to debit their card monthly. MITs have different reasons such as reauthorisation, delayed, unscheduled, incremental, recurring, instalment, no-show or resubmission. The following values apply - `M` - specifies that the transaction is initiated by the merchant - `C` - specifies that the transaction is initiated by the cardholder Where transactions are merchant initiated, a valid cardholder agreement must be defined. | [optional] |
|
16
16
|
| **match_avsa** | **String** | A policy value which determines whether an AVS address policy is enforced, bypassed or ignored. Values are `0` for the default policy (default value if not supplied). Your default values are determined by your account manager on setup of the account. `1` for an enforced policy. Transactions that are enforced will be rejected if the AVS address numeric value does not match. `2` to bypass. Transactions that are bypassed will be allowed through even if the address did not match. `3` to ignore. Transactions that are ignored will bypass the result and not send address numeric details for authorisation. | [optional] |
|
17
17
|
| **merchantid** | **Integer** | Identifies the merchant account to perform processing for. | |
|
18
|
+
| **tag** | **String** | A \"tag\" is a label that you can attach to a payment authorization. Tags can help you group transactions together based on certain criteria, like a work job or a ticket number. They can also assist in filtering transactions when you're generating reports. Multiple Tags You can add more than one tag to a transaction by separating them with commas. Limitations There is a maximum limit of 3 tags that can be added to a single transaction. Each tag can be no longer than 20 characters and alphanumeric with no spaces. Example: Let's say you're a software company and you have different teams working on various projects. When a team makes a purchase or incurs an expense, they can tag the transaction with the project name, the team name, and the type of expense. Project Name: Project_X Team Name: Team_A Type of Expense: Hardware So, the tag for a transaction might look like: Project_X,Team_A,Hardware This way, when you're looking at your financial reports, you can easily filter transactions based on these tags to see how much each project or team is spending on different types of expenses. | [optional] |
|
18
19
|
| **threedsecure** | [**ThreeDSecure**](ThreeDSecure.md) | | [optional] |
|
19
20
|
| **token** | **String** | A tokenised form of a card that belongs to a card holder's account and that has been previously registered. The token is time based and will only be active for a short duration. The value is therefore designed not to be stored remotely for future use. Tokens will start with ct and are resiliently tamper proof using HMacSHA-256. No sensitive card data is stored internally within the token. Each card will contain a different token and the value may be different on any retrieval call. The value can be presented for payment as a selection value to an end user in a web application. | |
|
20
21
|
| **trans_info** | **String** | Further information that can be added to the transaction will display in reporting. Can be used for flexible values such as operator id. | [optional] |
|
@@ -37,6 +38,7 @@ instance = CityPayApiClient::ChargeRequest.new(
|
|
37
38
|
initiation: null,
|
38
39
|
match_avsa: null,
|
39
40
|
merchantid: 11223344,
|
41
|
+
tag: null,
|
40
42
|
threedsecure: null,
|
41
43
|
token: ctPCAPyNyCkx3Ry8wGyv8khC3ch2hUSB3Db..Qzr,
|
42
44
|
trans_info: null,
|
data/docs/ContactDetails.md
CHANGED
@@ -4,19 +4,19 @@
|
|
4
4
|
|
5
5
|
| Name | Type | Description | Notes |
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
7
|
-
| **address1** | **String** | The first line of the address for the
|
8
|
-
| **address2** | **String** | The second line of the address for the
|
9
|
-
| **address3** | **String** | The third line of the address for the
|
10
|
-
| **area** | **String** | The area such as city, department, parish for the
|
11
|
-
| **company** | **String** | The company name for the
|
7
|
+
| **address1** | **String** | The first line of the address for the card holder. | [optional] |
|
8
|
+
| **address2** | **String** | The second line of the address for the card holder. | [optional] |
|
9
|
+
| **address3** | **String** | The third line of the address for the card holder. | [optional] |
|
10
|
+
| **area** | **String** | The area such as city, department, parish for the card holder. | [optional] |
|
11
|
+
| **company** | **String** | The company name for the card holder if the contact is a corporate contact. | [optional] |
|
12
12
|
| **country** | **String** | The country code in ISO 3166 format. The country value may be used for fraud analysis and for acceptance of the transaction. | [optional] |
|
13
|
-
| **email** | **String** | An email address for the
|
14
|
-
| **firstname** | **String** | The first name of the
|
15
|
-
| **lastname** | **String** | The last name or surname of the
|
16
|
-
| **mobile_no** | **String** | A mobile number for the
|
13
|
+
| **email** | **String** | An email address for the card holder which may be used for correspondence. | [optional] |
|
14
|
+
| **firstname** | **String** | The first name of the card holder. | [optional] |
|
15
|
+
| **lastname** | **String** | The last name or surname of the card holder. | [optional] |
|
16
|
+
| **mobile_no** | **String** | A mobile number for the card holder the mobile number is often required by delivery companies to ensure they are able to be in contact when required. | [optional] |
|
17
17
|
| **postcode** | **String** | The postcode or zip code of the address which may be used for fraud analysis. | [optional] |
|
18
|
-
| **telephone_no** | **String** | A telephone number for the
|
19
|
-
| **title** | **String** | A title for the
|
18
|
+
| **telephone_no** | **String** | A telephone number for the card holder. | [optional] |
|
19
|
+
| **title** | **String** | A title for the card holder such as Mr, Mrs, Ms, M. Mme. etc. | [optional] |
|
20
20
|
|
21
21
|
## Example
|
22
22
|
|
data/docs/DirectPostApi.md
CHANGED
@@ -17,7 +17,10 @@ All URIs are relative to *https://api.citypay.com*
|
|
17
17
|
|
18
18
|
Handles a CRes response from ACS, returning back the result of authorisation
|
19
19
|
|
20
|
-
Used to post from an ACS during a ThreeDSecure direct flow process. The endpoint requires a valid `threeDSSessionData`
|
20
|
+
Used to post from an ACS during a ThreeDSecure direct flow process. The endpoint requires a valid `threeDSSessionData`
|
21
|
+
value which defines the unique transaction through its workflow. This endpoint may be used by merchants wishing to
|
22
|
+
perform a `Direct Post` integration who wish to handle the challenge flow themselves.
|
23
|
+
|
21
24
|
|
22
25
|
### Examples
|
23
26
|
|
@@ -87,7 +90,10 @@ No authorization required
|
|
87
90
|
|
88
91
|
Handles a CRes response from ACS, returning back a token for future authorisation
|
89
92
|
|
90
|
-
Used to post from an ACS during a ThreeDSecure direct flow process. The endpoint requires a valid `threeDSSessionData`
|
93
|
+
Used to post from an ACS during a ThreeDSecure direct flow process. The endpoint requires a valid `threeDSSessionData`
|
94
|
+
value which defines the unique transaction through its workflow. This endpoint may be used by merchants wishing to
|
95
|
+
perform a `Direct Post` integration who wish to handle the challenge flow themselves.
|
96
|
+
|
91
97
|
|
92
98
|
### Examples
|
93
99
|
|
@@ -157,7 +163,15 @@ No authorization required
|
|
157
163
|
|
158
164
|
Direct Post Auth Request
|
159
165
|
|
160
|
-
Used to initiate a direct post request transaction flow.
|
166
|
+
Used to initiate a direct post request transaction flow.
|
167
|
+
|
168
|
+
<pre class="inline-code language-bash">
|
169
|
+
<code>
|
170
|
+
curl https://api.citypay.com/direct/auth?cp-domain-key=n834ytqp84y... \
|
171
|
+
-d "amount=7500&identifier=example_trans&cardnumber=4000000000000002&expmonth=9&expyear=2028&bill_to_postcode=L1+7ZW
|
172
|
+
</code>
|
173
|
+
</pre>.
|
174
|
+
|
161
175
|
|
162
176
|
### Examples
|
163
177
|
|
@@ -166,14 +180,14 @@ require 'time'
|
|
166
180
|
require 'citypay_api_client'
|
167
181
|
# setup authorization
|
168
182
|
CityPayApiClient.configure do |config|
|
169
|
-
config.api_key['cp-api-key'] = CityPayApiClient::ApiKey.new(client_id: 'YourClientId', licence_key: 'YourLicenceKey').generate
|
170
|
-
|
171
183
|
# Configure API key authorization: cp-domain-key
|
172
184
|
config.api_key['cp-domain-key'] = 'YOUR API KEY'
|
185
|
+
|
186
|
+
config.api_key['cp-api-key'] = CityPayApiClient::ApiKey.new(client_id: 'YourClientId', licence_key: 'YourLicenceKey').generate
|
173
187
|
end
|
174
188
|
|
175
189
|
api_instance = CityPayApiClient::DirectPostApi.new
|
176
|
-
direct_post_request = CityPayApiClient::DirectPostRequest.new({amount: 3600, cardnumber: '4000 0000 0000 0002', expmonth: 9, expyear:
|
190
|
+
direct_post_request = CityPayApiClient::DirectPostRequest.new({amount: 3600, cardnumber: '4000 0000 0000 0002', expmonth: 9, expyear: 2027, identifier: '95b857a1-5955-4b86-963c-5a6dbfc4fb95', mac: '3896FBC43674AF59478DAF7F546FA4D4CB89981A936E6AAE997E43B55DF6C39D'}) # DirectPostRequest |
|
177
191
|
|
178
192
|
begin
|
179
193
|
# Direct Post Auth Request
|
@@ -214,7 +228,7 @@ end
|
|
214
228
|
|
215
229
|
### Authorization
|
216
230
|
|
217
|
-
[cp-
|
231
|
+
[cp-domain-key](../README.md#cp-domain-key), [cp-api-key](../README.md#cp-api-key)
|
218
232
|
|
219
233
|
### HTTP request headers
|
220
234
|
|
@@ -228,7 +242,15 @@ end
|
|
228
242
|
|
229
243
|
Direct Post Tokenise Request
|
230
244
|
|
231
|
-
Used to initiate a direct post request transaction flow.
|
245
|
+
Used to initiate a direct post request transaction flow.
|
246
|
+
|
247
|
+
<pre class="inline-code language-bash">
|
248
|
+
<code>
|
249
|
+
curl https://api.citypay.com/v6/direct?cp-domain-key=n834ytqp84y... \
|
250
|
+
-d "amount=7500&identifier=example_trans&cardnumber=4000000000000002&expmonth=9&expyear=2028&bill_to_postcode=L1+7ZW
|
251
|
+
</code>
|
252
|
+
</pre>.
|
253
|
+
|
232
254
|
|
233
255
|
### Examples
|
234
256
|
|
@@ -237,14 +259,14 @@ require 'time'
|
|
237
259
|
require 'citypay_api_client'
|
238
260
|
# setup authorization
|
239
261
|
CityPayApiClient.configure do |config|
|
240
|
-
config.api_key['cp-api-key'] = CityPayApiClient::ApiKey.new(client_id: 'YourClientId', licence_key: 'YourLicenceKey').generate
|
241
|
-
|
242
262
|
# Configure API key authorization: cp-domain-key
|
243
263
|
config.api_key['cp-domain-key'] = 'YOUR API KEY'
|
264
|
+
|
265
|
+
config.api_key['cp-api-key'] = CityPayApiClient::ApiKey.new(client_id: 'YourClientId', licence_key: 'YourLicenceKey').generate
|
244
266
|
end
|
245
267
|
|
246
268
|
api_instance = CityPayApiClient::DirectPostApi.new
|
247
|
-
direct_post_request = CityPayApiClient::DirectPostRequest.new({amount: 3600, cardnumber: '4000 0000 0000 0002', expmonth: 9, expyear:
|
269
|
+
direct_post_request = CityPayApiClient::DirectPostRequest.new({amount: 3600, cardnumber: '4000 0000 0000 0002', expmonth: 9, expyear: 2027, identifier: '95b857a1-5955-4b86-963c-5a6dbfc4fb95', mac: '3896FBC43674AF59478DAF7F546FA4D4CB89981A936E6AAE997E43B55DF6C39D'}) # DirectPostRequest |
|
248
270
|
|
249
271
|
begin
|
250
272
|
# Direct Post Tokenise Request
|
@@ -285,7 +307,7 @@ end
|
|
285
307
|
|
286
308
|
### Authorization
|
287
309
|
|
288
|
-
[cp-
|
310
|
+
[cp-domain-key](../README.md#cp-domain-key), [cp-api-key](../README.md#cp-api-key)
|
289
311
|
|
290
312
|
### HTTP request headers
|
291
313
|
|
@@ -299,7 +321,9 @@ end
|
|
299
321
|
|
300
322
|
Direct Post Token Request
|
301
323
|
|
302
|
-
Perform a request for authorisation for a previously generated token. This flow will return an authorisation
|
324
|
+
Perform a request for authorisation for a previously generated token. This flow will return an authorisation
|
325
|
+
response stating that the transaction was approved or declined.
|
326
|
+
|
303
327
|
|
304
328
|
### Examples
|
305
329
|
|
@@ -308,10 +332,10 @@ require 'time'
|
|
308
332
|
require 'citypay_api_client'
|
309
333
|
# setup authorization
|
310
334
|
CityPayApiClient.configure do |config|
|
311
|
-
config.api_key['cp-api-key'] = CityPayApiClient::ApiKey.new(client_id: 'YourClientId', licence_key: 'YourLicenceKey').generate
|
312
|
-
|
313
335
|
# Configure API key authorization: cp-domain-key
|
314
336
|
config.api_key['cp-domain-key'] = 'YOUR API KEY'
|
337
|
+
|
338
|
+
config.api_key['cp-api-key'] = CityPayApiClient::ApiKey.new(client_id: 'YourClientId', licence_key: 'YourLicenceKey').generate
|
315
339
|
end
|
316
340
|
|
317
341
|
api_instance = CityPayApiClient::DirectPostApi.new
|
@@ -356,7 +380,7 @@ end
|
|
356
380
|
|
357
381
|
### Authorization
|
358
382
|
|
359
|
-
[cp-
|
383
|
+
[cp-domain-key](../README.md#cp-domain-key), [cp-api-key](../README.md#cp-api-key)
|
360
384
|
|
361
385
|
### HTTP request headers
|
362
386
|
|
data/docs/DirectPostRequest.md
CHANGED
@@ -22,6 +22,7 @@
|
|
22
22
|
| **redirect_failure** | **String** | The URL used to redirect back to your site when a transaction has been rejected or declined. Required if a url-encoded request. | [optional] |
|
23
23
|
| **redirect_success** | **String** | The URL used to redirect back to your site when a transaction has been tokenised or authorised. Required if a url-encoded request. | [optional] |
|
24
24
|
| **ship_to** | [**ContactDetails**](ContactDetails.md) | | [optional] |
|
25
|
+
| **tag** | **String** | A \"tag\" is a label that you can attach to a payment authorization. Tags can help you group transactions together based on certain criteria, like a work job or a ticket number. They can also assist in filtering transactions when you're generating reports. Multiple Tags You can add more than one tag to a transaction by separating them with commas. Limitations There is a maximum limit of 3 tags that can be added to a single transaction. Each tag can be no longer than 20 characters and alphanumeric with no spaces. Example: Let's say you're a software company and you have different teams working on various projects. When a team makes a purchase or incurs an expense, they can tag the transaction with the project name, the team name, and the type of expense. Project Name: Project_X Team Name: Team_A Type of Expense: Hardware So, the tag for a transaction might look like: Project_X,Team_A,Hardware This way, when you're looking at your financial reports, you can easily filter transactions based on these tags to see how much each project or team is spending on different types of expenses. | [optional] |
|
25
26
|
| **threedsecure** | [**ThreeDSecure**](ThreeDSecure.md) | | [optional] |
|
26
27
|
| **trans_info** | **String** | Further information that can be added to the transaction will display in reporting. Can be used for flexible values such as operator id. | [optional] |
|
27
28
|
| **trans_type** | **String** | The type of transaction being submitted. Normally this value is not required and your account manager may request that you set this field. | [optional] |
|
@@ -41,7 +42,7 @@ instance = CityPayApiClient::DirectPostRequest.new(
|
|
41
42
|
currency: GBP,
|
42
43
|
duplicate_policy: null,
|
43
44
|
expmonth: 9,
|
44
|
-
expyear:
|
45
|
+
expyear: 2027,
|
45
46
|
identifier: 95b857a1-5955-4b86-963c-5a6dbfc4fb95,
|
46
47
|
mac: 3896FBC43674AF59478DAF7F546FA4D4CB89981A936E6AAE997E43B55DF6C39D,
|
47
48
|
match_avsa: null,
|
@@ -50,6 +51,7 @@ instance = CityPayApiClient::DirectPostRequest.new(
|
|
50
51
|
redirect_failure: https://pay.mystore.com/continue_failure,
|
51
52
|
redirect_success: https://pay.mystore.com/continue_success,
|
52
53
|
ship_to: null,
|
54
|
+
tag: null,
|
53
55
|
threedsecure: null,
|
54
56
|
trans_info: null,
|
55
57
|
trans_type: null
|
@@ -17,7 +17,9 @@ All URIs are relative to *https://api.citypay.com*
|
|
17
17
|
|
18
18
|
ACL Check Request
|
19
19
|
|
20
|
-
Allows the checking of IP addresses against configured ACLs. Requests can perform a lookup of addresses in subnets and
|
20
|
+
Allows the checking of IP addresses against configured ACLs. Requests can perform a lookup of addresses in subnets and
|
21
|
+
services such as AWS or Azure to check that those addresses are listed in the ACLs.
|
22
|
+
|
21
23
|
|
22
24
|
### Examples
|
23
25
|
|
@@ -85,7 +87,9 @@ end
|
|
85
87
|
|
86
88
|
Domain Key Check Request
|
87
89
|
|
88
|
-
Checks the contents of a `domain key`. Can be used for operational processes to ensure that the properties of a
|
90
|
+
Checks the contents of a `domain key`. Can be used for operational processes to ensure that the properties of a
|
91
|
+
domain key meet their expectations.
|
92
|
+
|
89
93
|
|
90
94
|
### Examples
|
91
95
|
|
@@ -153,7 +157,9 @@ end
|
|
153
157
|
|
154
158
|
Domain Key Generation Request
|
155
159
|
|
156
|
-
Generates a domain key based on the permissions of the calling `api-key`. Domain keys can be used in _Direct Post_ and
|
160
|
+
Generates a domain key based on the permissions of the calling `api-key`. Domain keys can be used in _Direct Post_ and
|
161
|
+
`XHR` calls to the API services.
|
162
|
+
|
157
163
|
|
158
164
|
### Examples
|
159
165
|
|
@@ -221,7 +227,14 @@ end
|
|
221
227
|
|
222
228
|
List Merchants Request
|
223
229
|
|
224
|
-
An operational request to list current merchants for a client.
|
230
|
+
An operational request to list current merchants for a client.
|
231
|
+
|
232
|
+
### Sorting
|
233
|
+
|
234
|
+
Sorting can be performed by include a query parameter i.e. `/merchants/?sort=merchantid`
|
235
|
+
|
236
|
+
Fields that can be sorted are `merchantid` or `name`.
|
237
|
+
|
225
238
|
|
226
239
|
### Examples
|
227
240
|
|
@@ -289,7 +302,14 @@ end
|
|
289
302
|
|
290
303
|
Ping Request
|
291
304
|
|
292
|
-
A ping request which performs a connection and authentication test to the CityPay API server. The request
|
305
|
+
A ping request which performs a connection and authentication test to the CityPay API server. The request
|
306
|
+
will return a standard Acknowledgement with a response code `044` to signify a successful
|
307
|
+
ping.
|
308
|
+
|
309
|
+
The ping call is useful to confirm that you will be able to access
|
310
|
+
the API from behind any firewalls and that the permission
|
311
|
+
model is granting access from your source.
|
312
|
+
|
293
313
|
|
294
314
|
### Examples
|
295
315
|
|
@@ -298,10 +318,10 @@ require 'time'
|
|
298
318
|
require 'citypay_api_client'
|
299
319
|
# setup authorization
|
300
320
|
CityPayApiClient.configure do |config|
|
301
|
-
config.api_key['cp-api-key'] = CityPayApiClient::ApiKey.new(client_id: 'YourClientId', licence_key: 'YourLicenceKey').generate
|
302
|
-
|
303
321
|
# Configure API key authorization: cp-domain-key
|
304
322
|
config.api_key['cp-domain-key'] = 'YOUR API KEY'
|
323
|
+
|
324
|
+
config.api_key['cp-api-key'] = CityPayApiClient::ApiKey.new(client_id: 'YourClientId', licence_key: 'YourLicenceKey').generate
|
305
325
|
end
|
306
326
|
|
307
327
|
api_instance = CityPayApiClient::OperationalFunctionsApi.new
|
@@ -346,7 +366,7 @@ end
|
|
346
366
|
|
347
367
|
### Authorization
|
348
368
|
|
349
|
-
[cp-
|
369
|
+
[cp-domain-key](../README.md#cp-domain-key), [cp-api-key](../README.md#cp-api-key)
|
350
370
|
|
351
371
|
### HTTP request headers
|
352
372
|
|