diff --git a/src/WireMock.Net.OpenApiParser/Mappers/OpenApiPathsMapper.cs b/src/WireMock.Net.OpenApiParser/Mappers/OpenApiPathsMapper.cs index fae8b50e9..2a8616f0c 100644 --- a/src/WireMock.Net.OpenApiParser/Mappers/OpenApiPathsMapper.cs +++ b/src/WireMock.Net.OpenApiParser/Mappers/OpenApiPathsMapper.cs @@ -19,18 +19,12 @@ namespace WireMock.Net.OpenApiParser.Mappers; -internal class OpenApiPathsMapper +internal class OpenApiPathsMapper(WireMockOpenApiParserSettings settings) { private const string HeaderContentType = "Content-Type"; - private readonly WireMockOpenApiParserSettings _settings; - private readonly ExampleValueGenerator _exampleValueGenerator; - - public OpenApiPathsMapper(WireMockOpenApiParserSettings settings) - { - _settings = Guard.NotNull(settings); - _exampleValueGenerator = new ExampleValueGenerator(settings); - } + private readonly WireMockOpenApiParserSettings _settings = Guard.NotNull(settings); + private readonly ExampleValueGenerator _exampleValueGenerator = new(settings); public IReadOnlyList ToMappingModels(OpenApiPaths? paths, IList servers) { @@ -41,7 +35,7 @@ public IReadOnlyList ToMappingModels(OpenApiPaths? paths, IList MapPath(string path, IOpenApiPathItem pathItem, IList servers) + private MappingModel[] MapPath(string path, IOpenApiPathItem pathItem, IList servers) { return pathItem.Operations?.Select(o => MapOperationToMappingModel(path, o.Key.ToString().ToUpperInvariant(), o.Value, servers)).ToArray() ?? []; } @@ -50,53 +44,104 @@ private MappingModel MapOperationToMappingModel(string path, string httpMethod, { var queryParameters = operation.Parameters?.Where(p => p.In == ParameterLocation.Query) ?? []; var pathParameters = operation.Parameters?.Where(p => p.In == ParameterLocation.Path) ?? []; - var headers = operation.Parameters?.Where(p => p.In == ParameterLocation.Header) ?? []; + var requestHeaders = operation.Parameters?.Where(p => p.In == ParameterLocation.Header) ?? []; - var response = operation.Responses?.FirstOrDefault() ?? new KeyValuePair(); + return new MappingModel + { + Guid = Guid.NewGuid(), + Request = new RequestModel + { + Methods = [httpMethod], + Path = PathUtils.Combine(MapBasePath(servers), MapPathWithParameters(path, pathParameters)), + Params = MapQueryParameters(queryParameters), + Headers = MapRequestHeaders(requestHeaders), + Body = GetRequestBodyModel(operation.RequestBody) + }, + Response = GetResponseModel(operation.Responses?.FirstOrDefault()) + }; + } - TryGetContent(response.Value?.Content, out OpenApiMediaType? responseContent, out var responseContentType); - var responseSchema = response.Value?.Content?.FirstOrDefault().Value?.Schema; - var responseExample = responseContent?.Example; - var responseSchemaExample = responseContent?.Schema?.Example; + private BodyModel GetRequestBodyModel(IOpenApiRequestBody? openApiRequestBody) + { + if (openApiRequestBody is not { Content: not null, Required: true }) + { + return new BodyModel(); + } - var responseBody = responseExample ?? responseSchemaExample ?? MapSchemaToObject(responseSchema); + var content = openApiRequestBody.Content; - var requestBodyModel = new BodyModel(); - if (operation.RequestBody != null && operation.RequestBody.Content != null && operation.RequestBody.Required) - { - var request = operation.RequestBody.Content; - TryGetContent(request, out var requestContent, out _); + TryGetContent(content, out var requestContent, out _); - var requestBodySchema = operation.RequestBody.Content.First().Value?.Schema; - var requestBodyExample = requestContent!.Example; - var requestBodySchemaExample = requestContent.Schema?.Example; + var requestExample = requestContent?.Example; + var requestExamples = requestContent?.Examples; + var requestSchemaExample = requestContent?.Schema?.Example; + var requestSchemaExamples = requestContent?.Schema?.Examples; - var requestBodyMapped = requestBodyExample ?? requestBodySchemaExample ?? MapSchemaToObject(requestBodySchema); - requestBodyModel = MapRequestBody(requestBodyMapped); + JsonNode? request; + if (requestExample != null) + { + request = requestExample; + } + else if (requestSchemaExample != null) + { + request = requestSchemaExample; + } + else if (requestExamples != null) + { + request = requestExamples.FirstOrDefault().Value.Value; } + else if (requestSchemaExamples != null) + { + request = requestSchemaExamples.FirstOrDefault(); + } + else + { + var requestSchema = content?.FirstOrDefault().Value.Schema; + request = MapSchemaToObject(requestSchema); + } + + return MapRequestBody(request) ?? new BodyModel(); + } + + private ResponseModel GetResponseModel(KeyValuePair? openApiResponse) + { + var content = openApiResponse?.Value.Content; + + TryGetContent(content, out var responseContent, out var contentType); + + var responseExample = responseContent?.Example; + var responseExamples = responseContent?.Examples; + var responseSchemaExample = responseContent?.Schema?.Example; + var responseSchemaExamples = responseContent?.Schema?.Examples; - if (!int.TryParse(response.Key, out var httpStatusCode)) + JsonNode? response; + if (responseExample != null) + { + response = responseExample; + } + else if (responseSchemaExample != null) + { + response = responseSchemaExample; + } + else if (responseExamples != null) + { + response = responseExamples.FirstOrDefault().Value.Value; + } + else if (responseSchemaExamples != null) + { + response = responseSchemaExamples.FirstOrDefault(); + } + else { - httpStatusCode = 200; + var responseSchema = content?.FirstOrDefault().Value?.Schema; + response = MapSchemaToObject(responseSchema); } - return new MappingModel + return new ResponseModel { - Guid = Guid.NewGuid(), - Request = new RequestModel - { - Methods = [httpMethod], - Path = PathUtils.Combine(MapBasePath(servers), MapPathWithParameters(path, pathParameters)), - Params = MapQueryParameters(queryParameters), - Headers = MapRequestHeaders(headers), - Body = requestBodyModel - }, - Response = new ResponseModel - { - StatusCode = httpStatusCode, - Headers = MapHeaders(responseContentType, response.Value?.Headers), - BodyAsJson = responseBody != null ? JsonConvert.DeserializeObject(SystemTextJsonSerializer.Serialize(responseBody)) : null - } + StatusCode = int.TryParse(openApiResponse?.Key, out var httpStatusCode) ? httpStatusCode : 200, + Headers = MapHeaders(contentType, openApiResponse?.Value.Headers), + BodyAsJson = response != null ? JsonConvert.DeserializeObject(SystemTextJsonSerializer.Serialize(response)) : null }; } diff --git a/test/WireMock.Net.Tests/OpenApiParser/WireMockOpenApiParserTests.FromText_UsingYaml_ShouldReturnMappings.verified.txt b/test/WireMock.Net.Tests/OpenApiParser/WireMockOpenApiParserTests.FromText_UsingYaml_ShouldReturnMappings.verified.txt index 382d8455b..aefce8123 100644 --- a/test/WireMock.Net.Tests/OpenApiParser/WireMockOpenApiParserTests.FromText_UsingYaml_ShouldReturnMappings.verified.txt +++ b/test/WireMock.Net.Tests/OpenApiParser/WireMockOpenApiParserTests.FromText_UsingYaml_ShouldReturnMappings.verified.txt @@ -37,98 +37,6 @@ BodyAsJson: { count: [], data: [ - { - authorizationId: [], - authorizationResponse: [], - batch: { - batchId: [], - cycle: [], - date: [], - link: { - href: [], - method: [], - rel: [] - } - }, - card: { - avsRequest: [], - avsResponse: [], - cardNumber: [], - cvvPresenceIndicator: [], - type: [] - }, - createdDate: [], - currency: [], - lastModifiedDate: [], - merchant: { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [] - }, - preauthorizationRequestAmount: [], - transaction: { - amount: [], - date: [], - entryMethod: [], - link: { - href: [], - method: [], - rel: [] - }, - transactionId: [], - type: [] - } - }, - { - authorizationId: [], - authorizationResponse: [], - batch: { - batchId: [], - cycle: [], - date: [], - link: { - href: [], - method: [], - rel: [] - } - }, - card: { - avsRequest: [], - avsResponse: [], - cardNumber: [], - cvvPresenceIndicator: [], - type: [] - }, - createdDate: [], - currency: [], - lastModifiedDate: [], - merchant: { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [] - }, - preauthorizationRequestAmount: [], - transaction: { - amount: [], - date: [], - entryMethod: [], - link: { - href: [], - method: [], - rel: [] - }, - transactionId: [], - type: [] - } - }, { authorizationId: [], authorizationResponse: [], @@ -179,16 +87,6 @@ hasMore: [], limit: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -288,8 +186,16 @@ Name: JsonMatcher, Pattern: { - "processingTerminalId": "example-string", - "bankAccount": {} + "processingTerminalId": "1017", + "bankAccount": { + "type": "pad", + "accountType": "checking", + "nameOnAccount": "Joe Bloggs", + "accountNumber": "12345678909", + "routingNumber": "123456789", + "transitNumber": "12345", + "institutionNumber": "123" + } }, IgnoreCase: true } @@ -331,36 +237,22 @@ Name: JsonMatcher, Pattern: { - "processingTerminalId": "example-string", + "processingTerminalId": "1017", "order": { - "orderId": "example-string", - "dateTime": "2024-06-19T12:34:56.000\u002B00:00", - "description": "example-string", - "amount": 42, - "currency": "AED", + "orderId": "orderpop123", + "description": "sample order", + "amount": 11110, + "currency": "USD", "breakdown": { - "subtotal": 42, + "subtotal": 10000, "tip": { "type": "percentage", - "mode": "prompted", - "amount": 42, - "percentage": 2.2 + "percentage": 10 }, "taxes": [ { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 + "name": "VAT", + "rate": 1 } ] } @@ -368,18 +260,23 @@ "customer": { "notificationLanguage": "en", "contactMethods": [ - null, - null, - null + { + "type": "email", + "value": "joe@blogssoftware.com" + } ] }, "credentialOnFile": { - "externalVault": true, - "tokenize": true, - "secureTokenId": "example-string", - "mitAgreement": "unscheduled" - }, - "paymentMethod": {} + "tokenize": true + }, + "paymentMethod": { + "type": "ach", + "accountType": "checking", + "nameOnAccount": "Joe Bloggs", + "accountNumber": "11101010", + "routingNumber": "053200983", + "secCode": "web" + } }, IgnoreCase: true } @@ -388,11 +285,31 @@ Response: { StatusCode: 201, BodyAsJson: { + bankAccount: { + accountNumber: [], + accountType: [], + nameOnAccount: [], + routingNumber: [], + secCode: [], + secureToken: { + customerName: [], + link: { + href: [], + method: [], + rel: [] + }, + secureTokenId: [], + status: [], + token: [] + }, + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -401,16 +318,6 @@ breakdown: { subtotal: [], taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, { amount: [], name: [], @@ -419,7 +326,6 @@ ], tip: { amount: [], - mode: [], percentage: [], type: [] } @@ -431,102 +337,6 @@ }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - representment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - returns: [ - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - } - ], transactionResult: { authorizedAmount: [], currency: [], @@ -571,11 +381,19 @@ count: [], data: [ { + bankAccount: { + accountNumber: [], + institutionNumber: [], + nameOnAccount: [], + transitNumber: [], + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -584,16 +402,6 @@ breakdown: { subtotal: [], taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, { amount: [], name: [], @@ -602,7 +410,6 @@ ], tip: { amount: [], - mode: [], percentage: [], type: [] } @@ -614,268 +421,28 @@ }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - representment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - returns: [ - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - } - ], transactionResult: { authorizedAmount: [], currency: [], - processorResponseCode: [], responseCode: [], - responseMessage: [], status: [], type: [] } }, { - customer: { - contactMethods: [ - [], - [], - [] - ], - notificationLanguage: [] - }, - order: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, - currency: [], - dateTime: [], - description: [], - orderId: [] - }, - paymentId: [], - processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - representment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - returns: [ - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - } - ], - transactionResult: { - authorizedAmount: [], - currency: [], - processorResponseCode: [], - responseCode: [], - responseMessage: [], - status: [], + bankAccount: { + accountNumber: [], + institutionNumber: [], + nameOnAccount: [], + transitNumber: [], type: [] - } - }, - { + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -884,16 +451,6 @@ breakdown: { subtotal: [], taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, { amount: [], name: [], @@ -902,7 +459,6 @@ ], tip: { amount: [], - mode: [], percentage: [], type: [] } @@ -914,108 +470,10 @@ }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - representment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - returns: [ - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - } - ], transactionResult: { authorizedAmount: [], currency: [], - processorResponseCode: [], responseCode: [], - responseMessage: [], status: [], type: [] } @@ -1029,11 +487,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -1058,29 +511,39 @@ Response: { StatusCode: 200, BodyAsJson: { - customer: { - contactMethods: [ - [], - [], - [] - ], - notificationLanguage: [] - }, - order: { - amount: [], + bankAccount: { + accountNumber: [], + accountType: [], + nameOnAccount: [], + routingNumber: [], + secCode: [], + secureToken: { + customerName: [], + link: { + href: [], + method: [], + rel: [] + }, + secureTokenId: [], + status: [], + token: [] + }, + type: [] + }, + customer: { + contactMethods: [ + { + type: [], + value: [] + } + ], + notificationLanguage: [] + }, + order: { + amount: [], breakdown: { subtotal: [], taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, { amount: [], name: [], @@ -1089,7 +552,6 @@ ], tip: { amount: [], - mode: [], percentage: [], type: [] } @@ -1101,102 +563,6 @@ }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - representment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - returns: [ - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - } - ], transactionResult: { authorizedAmount: [], currency: [], @@ -1237,8 +603,8 @@ Name: JsonMatcher, Pattern: { - "amount": 42, - "description": "example-string" + "amount": 10000, + "description": "amount to refund" }, IgnoreCase: true } @@ -1247,11 +613,30 @@ Response: { StatusCode: 200, BodyAsJson: { + bankAccount: { + accountNumber: [], + institutionNumber: [], + nameOnAccount: [], + secureToken: { + customerName: [], + link: { + href: [], + method: [], + rel: [] + }, + secureTokenId: [], + status: [], + token: [] + }, + transitNumber: [], + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -1260,16 +645,6 @@ breakdown: { subtotal: [], taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, { amount: [], name: [], @@ -1278,7 +653,6 @@ ], tip: { amount: [], - mode: [], percentage: [], type: [] } @@ -1290,108 +664,10 @@ }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - representment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - returns: [ - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - } - ], transactionResult: { authorizedAmount: [], currency: [], - processorResponseCode: [], responseCode: [], - responseMessage: [], status: [], type: [] } @@ -1426,11 +702,31 @@ Response: { StatusCode: 200, BodyAsJson: { + bankAccount: { + accountNumber: [], + accountType: [], + nameOnAccount: [], + routingNumber: [], + secCode: [], + secureToken: { + customerName: [], + link: { + href: [], + method: [], + rel: [] + }, + secureTokenId: [], + status: [], + token: [] + }, + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -1439,16 +735,6 @@ breakdown: { subtotal: [], taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, { amount: [], name: [], @@ -1457,7 +743,6 @@ ], tip: { amount: [], - mode: [], percentage: [], type: [] } @@ -1469,102 +754,6 @@ }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - representment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - returns: [ - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - } - ], transactionResult: { authorizedAmount: [], currency: [], @@ -1605,11 +794,19 @@ Response: { StatusCode: 200, BodyAsJson: { + bankAccount: { + accountNumber: [], + institutionNumber: [], + nameOnAccount: [], + transitNumber: [], + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -1618,16 +815,6 @@ breakdown: { subtotal: [], taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, { amount: [], name: [], @@ -1635,8 +822,6 @@ } ], tip: { - amount: [], - mode: [], percentage: [], type: [] } @@ -1648,108 +833,10 @@ }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - representment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - returns: [ - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - }, - { - date: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - represented: [], - returnCode: [], - returnReason: [] - } - ], transactionResult: { authorizedAmount: [], currency: [], - processorResponseCode: [], responseCode: [], - responseMessage: [], status: [], type: [] } @@ -1784,15 +871,30 @@ Name: JsonMatcher, Pattern: { - "processingTerminalId": "example-string", + "processingTerminalId": "1017", "order": { - "orderId": "example-string", - "dateTime": "2024-06-19T12:34:56.000\u002B00:00", - "description": "example-string", - "amount": 42, - "currency": "AED" + "orderId": 314, + "description": "refund example", + "amount": 1000, + "currency": "USD" + }, + "customer": { + "notificationLanguage": "en", + "contactMethods": [ + { + "type": "email", + "value": "joe@blogssoftware.com" + } + ] }, - "refundMethod": {} + "refundMethod": { + "type": "ach", + "secCode": "web", + "accountType": "checking", + "nameOnAccount": "Joe Bloggs", + "accountNumber": "32183159", + "routingNumber": "063100277" + } }, IgnoreCase: true } @@ -1801,11 +903,20 @@ Response: { StatusCode: 201, BodyAsJson: { + bankAccount: { + accountNumber: [], + accountType: [], + nameOnAccount: [], + routingNumber: [], + secCode: [], + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -1816,20 +927,6 @@ description: [], orderId: [] }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, processingTerminalId: [], refundId: [], transactionResult: { @@ -1876,11 +973,20 @@ count: [], data: [ { + bankAccount: { + accountNumber: [], + accountType: [], + nameOnAccount: [], + routingNumber: [], + secCode: [], + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -1891,20 +997,6 @@ description: [], orderId: [] }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, processingTerminalId: [], refundId: [], transactionResult: { @@ -1918,11 +1010,20 @@ } }, { + bankAccount: { + accountNumber: [], + accountType: [], + nameOnAccount: [], + routingNumber: [], + secCode: [], + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -1933,62 +1034,6 @@ description: [], orderId: [] }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - processingTerminalId: [], - refundId: [], - transactionResult: { - authorizedAmount: [], - currency: [], - processorResponseCode: [], - responseCode: [], - responseMessage: [], - status: [], - type: [] - } - }, - { - customer: { - contactMethods: [ - [], - [], - [] - ], - notificationLanguage: [] - }, - order: { - amount: [], - currency: [], - dateTime: [], - description: [], - orderId: [] - }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, processingTerminalId: [], refundId: [], transactionResult: { @@ -2010,11 +1055,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -2039,11 +1079,20 @@ Response: { StatusCode: 200, BodyAsJson: { + bankAccount: { + accountNumber: [], + accountType: [], + nameOnAccount: [], + routingNumber: [], + secCode: [], + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -2054,20 +1103,6 @@ description: [], orderId: [] }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, processingTerminalId: [], refundId: [], transactionResult: { @@ -2110,11 +1145,20 @@ Response: { StatusCode: 200, BodyAsJson: { + bankAccount: { + accountNumber: [], + accountType: [], + nameOnAccount: [], + routingNumber: [], + secCode: [], + type: [] + }, customer: { contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], notificationLanguage: [] }, @@ -2125,20 +1169,6 @@ description: [], orderId: [] }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, processingTerminalId: [], refundId: [], transactionResult: { @@ -2191,48 +1221,6 @@ heldAmount: [], lastModifiedDate: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], - merchant: { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [] - }, - returnAmount: [], - saleAmount: [], - transactionCount: [] - }, - { - batchId: [], - createdDate: [], - currency: [], - date: [], - heldAmount: [], - lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -2270,11 +1258,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -2303,11 +1286,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -2385,43 +1363,37 @@ Name: JsonMatcher, Pattern: { - "processingTerminalId": "example-string", - "operator": "example-string", - "currency": "AED", - "customer": { - "firstName": "example-string", - "lastName": "example-string", - "dateOfBirth": "2024-06-19", - "referenceNumber": "example-string", - "billingAddress": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" - }, - "shippingAddress": { - "recipientName": "example-string", - "address": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" + "operator": "Mark Simpsons", + "processingTerminalId": "1024", + "currency": "USD", + "card": { + "type": "card", + "cardDetails": { + "entryMethod": "keyed", + "cardholderName": "Joe Bloggs", + "cardholderSignature": "12ab", + "keyedData": { + "dataFormat": "plainText", + "cardNumber": "6007602801003837967", + "expiryDate": "1229", + "device": { + "type": "PAX_A920_PRO", + "dataKsn": "FFFF5B09910001000061", + "firmwareVersion": "PayDroid_8.1.0_Sagittarius_V11.1.11_20200904 V1.04.02_20210617", + "category": "attended", + "serialNumber": "1850010868" + } + }, + "pinDetails": { + "dataFormat": "dukpt", + "pin": "0123456789abcdef", + "pinKsn": "0002152304aad1234561" + }, + "ebtDetails": { + "benefitCategory": "cash" } - }, - "contactMethods": [ - null, - null, - null - ], - "notificationLanguage": "en" - }, - "card": {} + } + } }, IgnoreCase: true } @@ -2432,16 +1404,6 @@ BodyAsJson: { card: { balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, { amount: [], benefitCategory: [], @@ -2451,37 +1413,8 @@ cardholderName: [], cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], entryMethod: [], expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] - }, type: [] }, operator: [], @@ -2506,10 +1439,21 @@ Name: JsonMatcher, Pattern: { - "processingTerminalId": "example-string", - "amount": 42, - "currency": "AED", - "card": {} + "operator": "Andrew White", + "processingTerminalId": "1005", + "card": { + "type": "card", + "cardDetails": { + "entryMethod": "keyed", + "cardholderName": "Joe Bloggs", + "cardholderSignature": "13ab", + "keyedData": { + "dataFormat": "plainText", + "cardNumber": "5001650000000000", + "expiryDate": "1225" + } + } + } }, IgnoreCase: true } @@ -2522,12 +1466,6 @@ country: [], currency: [], debit: [], - surcharging: { - allowed: [], - amount: [], - disclosure: [], - percentage: [] - }, type: [] }, Headers: { @@ -2560,42 +1498,21 @@ Name: JsonMatcher, Pattern: { - "processingTerminalId": "example-string", - "operator": "example-string", - "customer": { - "firstName": "example-string", - "lastName": "example-string", - "dateOfBirth": "2024-06-19", - "referenceNumber": "example-string", - "billingAddress": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" - }, - "shippingAddress": { - "recipientName": "example-string", - "address": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" + "operator": "Mark Simpsons", + "processingTerminalId": "1001", + "card": { + "type": "card", + "cardDetails": { + "entryMethod": "keyed", + "cardholderName": "Joe Bloggs", + "cardholderSignature": "13ab", + "keyedData": { + "dataFormat": "plainText", + "cardNumber": "4539858876047062", + "expiryDate": "1230" } - }, - "contactMethods": [ - null, - null, - null - ], - "notificationLanguage": "en" - }, - "card": {} + } + } }, IgnoreCase: true } @@ -2604,12 +1521,21 @@ Response: { StatusCode: 200, BodyAsJson: { - dateTime: [], + card: { + cardholderName: [], + cardholderSignature: [], + cardNumber: [], + entryMethod: [], + expiryDate: [], + type: [] + }, operator: [], processingTerminalId: [], - processorResponseCode: [], - responseCode: [], - responseMessage: [], + transactionResult: { + responseCode: [], + responseMessage: [], + status: [] + }, verified: [] }, Headers: { @@ -2631,12 +1557,6 @@ BodyAsJson: { contactId: [], contactMethods: [ - [], - [], - [] - ], - firstName: [], - identifiers: [ { type: [], value: [] @@ -2645,6 +1565,17 @@ type: [], value: [] }, + { + type: [], + value: [] + }, + { + type: [], + value: [] + } + ], + firstName: [], + identifiers: [ { type: [], value: [] @@ -2710,108 +1641,17 @@ Name: JsonMatcher, Pattern: { - "operator": "example-string", - "processingTerminalId": "example-string", + "operator": "jbloggs", + "processingTerminalId": "1021", "order": { - "orderId": "example-string", - "dateTime": "2024-06-19T12:34:56.000\u002B00:00", - "description": "example-string", - "amount": 42, - "currency": "AED", - "breakdown": { - "subtotal": 42, - "cashbackAmount": 42, - "tip": { - "type": "percentage", - "mode": "prompted", - "amount": 42, - "percentage": 2.2 - }, - "taxes": [ - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - } - ], - "surcharge": { - "bypass": true, - "amount": 42, - "percentage": 2.2 - }, - "dualPricing": { - "offered": true, - "choiceRate": { - "applied": true, - "rate": 2.2, - "amount": 42 - }, - "alternativeTender": "card" - } - } - }, - "customer": { - "firstName": "example-string", - "lastName": "example-string", - "dateOfBirth": "2024-06-19", - "referenceNumber": "example-string", - "billingAddress": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" - }, - "shippingAddress": { - "recipientName": "example-string", - "address": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" - } - }, - "contactMethods": [ - null, - null, - null - ], - "notificationLanguage": "en" - }, - "ipAddress": { - "type": "ipv4", - "value": "example-string" - }, - "credentialOnFile": { - "externalVault": true, - "tokenize": true, - "secureTokenId": "example-string", - "mitAgreement": "unscheduled" + "orderId": "4fd4-99bc", + "currency": "USD", + "amount": 1000 }, "customizationOptions": { - "ebtDetails": { - "benefitCategory": "cash", - "withdrawal": true - }, "entryMethod": "deviceRead" }, - "autoCapture": true, - "processAsSale": true + "autoCapture": true }, IgnoreCase: true } @@ -2820,7 +1660,6 @@ Response: { StatusCode: 202, BodyAsJson: { - errorMessage: [], link: { href: [], method: [], @@ -2859,58 +1698,15 @@ Name: JsonMatcher, Pattern: { - "operator": "example-string", - "processingTerminalId": "example-string", + "operator": "jbloggs", + "processingTerminalId": "1021", "order": { - "orderId": "example-string", - "dateTime": "2024-06-19T12:34:56.000\u002B00:00", - "description": "example-string", - "amount": 42, - "currency": "AED" - }, - "customer": { - "firstName": "example-string", - "lastName": "example-string", - "dateOfBirth": "2024-06-19", - "referenceNumber": "example-string", - "billingAddress": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" - }, - "shippingAddress": { - "recipientName": "example-string", - "address": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" - } - }, - "contactMethods": [ - null, - null, - null - ], - "notificationLanguage": "en" - }, - "ipAddress": { - "type": "ipv4", - "value": "example-string" + "orderId": "4fd4-99bc", + "currency": "USD", + "amount": 1000 }, "customizationOptions": { - "ebtDetails": { - "benefitCategory": "cash", - "withdrawal": true - }, - "entryMethod": "deviceRead" + "entryMethod": "manualEntry" } }, IgnoreCase: true @@ -2920,7 +1716,6 @@ Response: { StatusCode: 202, BodyAsJson: { - errorMessage: [], link: { href: [], method: [], @@ -2961,110 +1756,6 @@ BodyAsJson: { count: [], data: [ - { - authorizationCode: [], - card: { - avsRequest: [], - avsResponse: [], - cardNumber: [], - cvvPresenceIndicator: [], - type: [] - }, - createdDate: [], - currency: [], - currentStatus: { - disputeStatusId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [], - statusDate: [] - }, - description: [], - disputeAmount: [], - disputeId: [], - disputeType: [], - feeAmount: [], - firstDispute: [], - lastModifiedDate: [], - merchant: { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [] - }, - receivedDate: [], - referenceNumber: [], - transaction: { - amount: [], - date: [], - entryMethod: [], - link: { - href: [], - method: [], - rel: [] - }, - transactionId: [], - type: [] - } - }, - { - authorizationCode: [], - card: { - avsRequest: [], - avsResponse: [], - cardNumber: [], - cvvPresenceIndicator: [], - type: [] - }, - createdDate: [], - currency: [], - currentStatus: { - disputeStatusId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [], - statusDate: [] - }, - description: [], - disputeAmount: [], - disputeId: [], - disputeType: [], - feeAmount: [], - firstDispute: [], - lastModifiedDate: [], - merchant: { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [] - }, - receivedDate: [], - referenceNumber: [], - transaction: { - amount: [], - date: [], - entryMethod: [], - link: { - href: [], - method: [], - rel: [] - }, - transactionId: [], - type: [] - } - }, { authorizationCode: [], card: { @@ -3121,16 +1812,6 @@ hasMore: [], limit: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -3195,59 +1876,25 @@ fundingAccountId: [], lastModifiedDate: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], rel: [] } ], + metadata: { + internalRef: [] + }, nameOnAccount: [], paymentMethods: [ - [], - [], - [] - ], - status: [], - type: [], - use: [] - }, - { - createdDate: [], - fundingAccountId: [], - lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { - href: [], - method: [], - rel: [] + type: [], + value: { + accountNumber: [], + routingNumber: [] + } } ], - nameOnAccount: [], - paymentMethods: [ - [], - [], - [] - ], status: [], type: [], use: [] @@ -3257,27 +1904,24 @@ fundingAccountId: [], lastModifiedDate: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], rel: [] } ], + metadata: { + internalRef: [] + }, nameOnAccount: [], paymentMethods: [ - [], - [], - [] + { + type: [], + value: { + accountNumber: [], + routingNumber: [] + } + } ], status: [], type: [], @@ -3292,11 +1936,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -3325,27 +1964,24 @@ fundingAccountId: [], lastModifiedDate: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], rel: [] } ], + metadata: { + internalRef: [] + }, nameOnAccount: [], paymentMethods: [ - [], - [], - [] + { + type: [], + value: { + accountNumber: [], + routingNumber: [] + } + } ], status: [], type: [], @@ -3427,7 +2063,6 @@ description: [], id: [], merchant: [], - recipient: [], type: [] }, { @@ -3437,7 +2072,6 @@ description: [], id: [], merchant: [], - recipient: [], type: [] }, { @@ -3449,20 +2083,82 @@ merchant: [], recipient: [], type: [] - } - ], - hasMore: [], - limit: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] + }, + { + amount: [], + currency: [], + date: [], + description: [], + id: [], + merchant: [], + recipient: [], + type: [] + }, + { + amount: [], + currency: [], + date: [], + description: [], + id: [], + merchant: [], + type: [] + }, + { + amount: [], + currency: [], + date: [], + description: [], + id: [], + merchant: [], + type: [] + }, + { + amount: [], + currency: [], + date: [], + description: [], + id: [], + merchant: [], + recipient: [], + type: [] + }, + { + amount: [], + currency: [], + date: [], + description: [], + id: [], + merchant: [], + recipient: [], + type: [] + }, + { + amount: [], + currency: [], + date: [], + description: [], + id: [], + merchant: [], + type: [] + }, + { + amount: [], + currency: [], + date: [], + description: [], + id: [], + merchant: [], + recipient: [], + type: [] + } + ], + hasMore: [], + limit: [], + links: [ + { + href: [], + method: [], + rel: [] }, { href: [], @@ -3497,13 +2193,6 @@ merchantId: [], pending: [] }, - { - available: [], - currency: [], - funds: [], - merchantId: [], - pending: [] - }, { available: [], currency: [], @@ -3520,11 +2209,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -3585,137 +2269,8 @@ method: [], rel: [] }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] + metadata: { + customerId: [] }, paymentMethod: [], status: [] @@ -3723,6 +2278,9 @@ ] } ], + metadata: { + instructionRef: [] + }, status: [] }, Headers: { @@ -3798,6 +2356,9 @@ method: [], rel: [] }, + metadata: { + customerId: [] + }, paymentMethod: [], status: [] }, @@ -3812,9 +2373,38 @@ method: [], rel: [] }, + metadata: { + customerId: [] + }, paymentMethod: [], status: [] - }, + } + ] + } + ], + metadata: { + instrcutionRef: [] + }, + status: [] + }, + { + createdDate: [], + instructionId: [], + lastModifiedDate: [], + link: { + href: [], + method: [], + rel: [] + }, + merchants: [ + { + link: { + href: [], + method: [], + rel: [] + }, + merchantId: [], + recipients: [ { amount: { currency: [], @@ -3826,6 +2416,9 @@ method: [], rel: [] }, + metadata: { + customerId: [] + }, paymentMethod: [], status: [] } @@ -3849,86 +2442,9 @@ href: [], method: [], rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] + }, + metadata: { + customerId: [] }, paymentMethod: [], status: [] @@ -3936,439 +2452,99 @@ ] } ], + metadata: { + instrcutionRef: [] + }, status: [] + } + ], + hasMore: [], + limit: [], + links: [ + { + href: [], + method: [], + rel: [] }, { - createdDate: [], - instructionId: [], - lastModifiedDate: [], + href: [], + method: [], + rel: [] + } + ] + }, + Headers: { + Content-Type: application/json + } + } + }, + { + Guid: Guid_34, + Request: { + Path: /v1/funding-instructions/{instructionId}, + Methods: [ + GET + ], + Body: {} + }, + Response: { + StatusCode: 200, + BodyAsJson: { + createdDate: [], + instructionId: [], + lastModifiedDate: [], + merchants: [ + { link: { href: [], method: [], rel: [] }, - merchants: [ + merchantId: [], + recipients: [ { + amount: { + currency: [], + value: [] + }, + fundingAccountId: [], link: { href: [], method: [], rel: [] }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] + paymentMethod: [], + status: [] }, { + amount: { + currency: [], + value: [] + }, + fundingAccountId: [], link: { href: [], method: [], rel: [] }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] + paymentMethod: [], + status: [] }, { + amount: { + currency: [], + value: [] + }, + fundingAccountId: [], link: { href: [], method: [], rel: [] }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] - } - ], - status: [] - }, - { - createdDate: [], - instructionId: [], - lastModifiedDate: [], - link: { - href: [], - method: [], - rel: [] - }, - merchants: [ - { - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] + paymentMethod: [], + status: [] } - ], - status: [] - } - ], - hasMore: [], - limit: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ] - }, - Headers: { - Content-Type: application/json - } - } - }, - { - Guid: Guid_34, - Request: { - Path: /v1/funding-instructions/{instructionId}, - Methods: [ - GET - ], - Body: {} - }, - Response: { - StatusCode: 200, - BodyAsJson: { - createdDate: [], - instructionId: [], - lastModifiedDate: [], - merchants: [ - { - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [], - recipients: [ - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - }, - { - amount: { - currency: [], - value: [] - }, - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentMethod: [], - status: [] - } - ] + ] }, { link: { @@ -4623,152 +2799,19 @@ count: [], data: [ { - charityId: [], - contactMethods: [ - [], - [], - [] - ], - createdDate: [], - doingBuinessAs: [], - fundingAccounts: [ - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - } - ], - lastModifiedDate: [], - owners: [ - { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - } - ], - recipientId: [], - recipientType: [], - status: [], - taxId: [] - }, - { - charityId: [], + address: { + address1: [], + city: [], + country: [], + postalCode: [], + state: [] + }, contactMethods: [ - [], - [], - [] - ], - createdDate: [], - doingBuinessAs: [], - fundingAccounts: [ - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - } - ], - lastModifiedDate: [], - owners: [ - { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] + type: [], + value: [] } ], - recipientId: [], - recipientType: [], - status: [], - taxId: [] - }, - { - charityId: [], - contactMethods: [ - [], - [], - [] - ], createdDate: [], doingBuinessAs: [], fundingAccounts: [ @@ -4781,15 +2824,6 @@ }, status: [] }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, { fundingAccountId: [], link: { @@ -4801,23 +2835,10 @@ } ], lastModifiedDate: [], + metadata: { + customerId: [] + }, owners: [ - { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, { link: { href: [], @@ -4836,16 +2857,6 @@ hasMore: [], limit: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -4870,11 +2881,18 @@ Response: { StatusCode: 200, BodyAsJson: { - charityId: [], + address: { + address1: [], + city: [], + country: [], + postalCode: [], + state: [] + }, contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], createdDate: [], doingBuinessAs: [], @@ -4888,15 +2906,6 @@ }, status: [] }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, { fundingAccountId: [], link: { @@ -4908,23 +2917,10 @@ } ], lastModifiedDate: [], + metadata: { + customerId: [] + }, owners: [ - { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, { link: { href: [], @@ -4987,59 +2983,25 @@ fundingAccountId: [], lastModifiedDate: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], rel: [] } ], + metadata: { + internalRef: [] + }, nameOnAccount: [], paymentMethods: [ - [], - [], - [] - ], - status: [], - type: [], - use: [] - }, - { - createdDate: [], - fundingAccountId: [], - lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { - href: [], - method: [], - rel: [] + type: [], + value: { + accountNumber: [], + routingNumber: [] + } } ], - nameOnAccount: [], - paymentMethods: [ - [], - [], - [] - ], status: [], type: [], use: [] @@ -5049,27 +3011,24 @@ fundingAccountId: [], lastModifiedDate: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], rel: [] } ], + metadata: { + internalRef: [] + }, nameOnAccount: [], paymentMethods: [ - [], - [], - [] + { + type: [], + value: { + accountNumber: [], + routingNumber: [] + } + } ], status: [], type: [], @@ -5110,27 +3069,24 @@ fundingAccountId: [], lastModifiedDate: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], rel: [] } ], + metadata: { + internalRef: [] + }, nameOnAccount: [], paymentMethods: [ - [], - [], - [] + { + type: [], + value: { + accountNumber: [], + routingNumber: [] + } + } ], status: [], type: [], @@ -5366,12 +3322,24 @@ Name: JsonMatcher, Pattern: { - "channel": "pos", - "processingTerminalId": "example-string", - "operator": "example-string", - "baseAmount": 42, - "baseCurrency": "AED", - "paymentMethod": {} + "channel": "web", + "operator": "Aaron", + "processingTerminalId": "1005", + "baseAmount": 10000, + "baseCurrency": "EUR", + "paymentMethod": { + "type": "card", + "accountType": "checking", + "cardDetails": { + "entryMethod": "keyed", + "cardholderName": "Joe Bloggs", + "keyedData": { + "dataFormat": "plainText", + "cardNumber": "5001650000000000", + "expiryDate": "0430" + } + } + } }, IgnoreCase: true } @@ -5384,15 +3352,6 @@ baseCurrency: [], cardInfo: { cardNumber: [], - country: [], - currency: [], - debit: [], - surcharging: { - allowed: [], - amount: [], - disclosure: [], - percentage: [] - }, type: [] }, dccOffer: { @@ -5403,13 +3362,11 @@ fxCurrencyExponent: [], fxRate: [], markup: [], - markupText: [], - offerReference: [], provider: [], + reference: [], source: [] }, inquiryResult: { - causeOfRejection: [], dccOffered: [] }, operator: [], @@ -5447,14 +3404,22 @@ BodyAsJson: { business: { addresses: [ - [], - [], - [] + { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [], + type: [] + } ], contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], countryOfOperation: [], name: [], @@ -5463,23 +3428,6 @@ }, createdDate: [], lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], merchantPlatformId: [], processingAccounts: [ { @@ -5490,26 +3438,14 @@ rel: [] }, processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] + signature: { + link: { + href: [], + method: [], + rel: [] + }, + type: [] }, - processingAccountId: [], status: [] } ] @@ -5537,14 +3473,26 @@ { business: { addresses: [ - [], - [], - [] + { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [], + type: [] + } ], contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + }, + { + type: [], + value: [] + } ], countryOfOperation: [], name: [], @@ -5553,23 +3501,6 @@ }, createdDate: [], lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], merchantPlatformId: [], processingAccounts: [ { @@ -5580,26 +3511,14 @@ rel: [] }, processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] + signature: { + link: { + href: [], + method: [], + rel: [] + }, + type: [] }, - processingAccountId: [], status: [] } ] @@ -5607,14 +3526,26 @@ { business: { addresses: [ - [], - [], - [] + { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [], + type: [] + } ], contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + }, + { + type: [], + value: [] + } ], countryOfOperation: [], name: [], @@ -5623,23 +3554,6 @@ }, createdDate: [], lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], merchantPlatformId: [], processingAccounts: [ { @@ -5650,96 +3564,14 @@ rel: [] }, processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - processingAccountId: [], - status: [] - } - ] - }, - { - business: { - addresses: [ - [], - [], - [] - ], - contactMethods: [ - [], - [], - [] - ], - countryOfOperation: [], - name: [], - organizationType: [], - taxId: [] - }, - createdDate: [], - lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], - merchantPlatformId: [], - processingAccounts: [ - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - processingAccountId: [], + signature: { + link: { + href: [], + method: [], + rel: [] + }, + type: [] + }, status: [] } ] @@ -5753,11 +3585,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -5784,14 +3611,22 @@ BodyAsJson: { business: { addresses: [ - [], - [], - [] + { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [], + type: [] + } ], contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], countryOfOperation: [], name: [], @@ -5800,24 +3635,10 @@ }, createdDate: [], lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], merchantPlatformId: [], + metadata: { + customerId: [] + }, processingAccounts: [ { doingBusinessAs: [], @@ -5827,26 +3648,14 @@ rel: [] }, processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - processingAccountId: [], - status: [] - }, - { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] + signature: { + link: { + href: [], + method: [], + rel: [] + }, + type: [] }, - processingAccountId: [], status: [] } ] @@ -5871,35 +3680,29 @@ count: [], data: [ { + address: { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [] + }, businessStartDate: [], businessType: [], categoryCode: [], contactMethods: [ - [], - [], - [] - ], - contacts: [ { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } + type: [], + value: [] }, { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } - }, + type: [], + value: [] + } + ], + contacts: [ { contactId: [], firstName: [], @@ -5915,26 +3718,7 @@ doingBusinessAs: [], funding: { acceleratedFundingFee: [], - dailyDiscount: [], fundingAccounts: [ - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, { fundingAccountId: [], link: { @@ -5949,45 +3733,8 @@ status: [] }, lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], merchandiseOrServiceSold: [], owners: [ - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, { firstName: [], lastName: [], @@ -6021,15 +3768,12 @@ writtenRefundPolicy: [] }, transactionTypes: [ - [], [], [] - ], - transactionTypesOther: [] + ] }, cardAcceptance: { cardsAccepted: [ - [], [], [] ], @@ -6057,6 +3801,8 @@ highest: [] }, monthsOfOperation: [ + [], + [], [], [], [] @@ -6073,40 +3819,37 @@ } }, processingAccountId: [], + signature: { + type: [] + }, status: [], timezone: [], website: [] }, { + address: { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [] + }, businessStartDate: [], businessType: [], categoryCode: [], contactMethods: [ - [], - [], - [] - ], - contacts: [ { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } + type: [], + value: [] }, { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } - }, + type: [], + value: [] + } + ], + contacts: [ { contactId: [], firstName: [], @@ -6122,26 +3865,7 @@ doingBusinessAs: [], funding: { acceleratedFundingFee: [], - dailyDiscount: [], fundingAccounts: [ - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, { fundingAccountId: [], link: { @@ -6156,45 +3880,8 @@ status: [] }, lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], merchandiseOrServiceSold: [], owners: [ - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, { firstName: [], lastName: [], @@ -6214,60 +3901,12 @@ } }, processing: { - ach: { - estimatedMonthlyTransactions: [], - limits: { - dailyDeposit: [], - monthlyDeposit: [], - singleTransaction: [] - }, - naics: [], - previouslyTerminatedForAch: [], - refunds: { - refundPolicyUrl: [], - writtenRefundPolicy: [] - }, - transactionTypes: [ - [], - [], - [] - ], - transactionTypesOther: [] - }, - cardAcceptance: { - cardsAccepted: [ - [], - [], - [] - ], - debitOnly: [], - specialityCards: { - americanExpressDirect: { - enabled: [], - merchantNumber: [] - }, - electronicBenefitsTransfer: { - enabled: [], - fnsNumber: [] - }, - other: { - fleetMerchantId: [], - voyagerMerchantId: [], - wexMerchantNumber: [] - } - } - }, isSeasonal: [], merchantId: [], monthlyAmounts: { average: [], highest: [] }, - monthsOfOperation: [ - [], - [], - [] - ], transactionAmounts: { average: [], highest: [] @@ -6280,385 +3919,114 @@ } }, processingAccountId: [], + signature: { + type: [] + }, status: [], timezone: [], website: [] + } + ], + hasMore: [], + limit: [], + links: [ + { + href: [], + method: [], + rel: [] }, { - businessStartDate: [], - businessType: [], - categoryCode: [], - contactMethods: [ - [], - [], - [] - ], - contacts: [ - { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } + href: [], + method: [], + rel: [] + } + ] + }, + Headers: { + Content-Type: application/json + } + } + }, + { + Guid: Guid_51, + Request: { + Path: /v1/merchant-platforms/12345/processing-accounts, + Methods: [ + POST + ], + Headers: [ + { + Name: Idempotency-Key, + Matchers: [ + { + Name: ExactMatcher, + Pattern: example-string, + IgnoreCase: true + } + ], + IgnoreCase: true + } + ], + Body: {} + }, + Response: { + StatusCode: 201, + BodyAsJson: { + address: { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [] + }, + businessStartDate: [], + businessType: [], + categoryCode: [], + contactMethods: [ + { + type: [], + value: [] + } + ], + contacts: [ + { + contactId: [], + firstName: [], + lastName: [], + link: { + href: [], + method: [], + rel: [] + } + } + ], + createdDate: [], + doingBusinessAs: [], + funding: { + acceleratedFundingFee: [], + dailyDiscount: [], + fundingAccounts: [ + { + fundingAccountId: [], + link: { + href: [], + method: [], + rel: [] }, - { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } - }, - { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } - } - ], - createdDate: [], - doingBusinessAs: [], - funding: { - acceleratedFundingFee: [], - dailyDiscount: [], - fundingAccounts: [ - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - } - ], - fundingSchedule: [], status: [] - }, - lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], - merchandiseOrServiceSold: [], - owners: [ - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - } - ], - pricing: { - link: { - href: [], - method: [], - rel: [] - } - }, - processing: { - ach: { - estimatedMonthlyTransactions: [], - limits: { - dailyDeposit: [], - monthlyDeposit: [], - singleTransaction: [] - }, - naics: [], - previouslyTerminatedForAch: [], - refunds: { - refundPolicyUrl: [], - writtenRefundPolicy: [] - }, - transactionTypes: [ - [], - [], - [] - ], - transactionTypesOther: [] - }, - cardAcceptance: { - cardsAccepted: [ - [], - [], - [] - ], - debitOnly: [], - specialityCards: { - americanExpressDirect: { - enabled: [], - merchantNumber: [] - }, - electronicBenefitsTransfer: { - enabled: [], - fnsNumber: [] - }, - other: { - fleetMerchantId: [], - voyagerMerchantId: [], - wexMerchantNumber: [] - } - } - }, - isSeasonal: [], - merchantId: [], - monthlyAmounts: { - average: [], - highest: [] - }, - monthsOfOperation: [ - [], - [], - [] - ], - transactionAmounts: { - average: [], - highest: [] - }, - volumeBreakdown: { - cardPresentKeyed: [], - cardPresentSwiped: [], - ecommerce: [], - mailOrTelephone: [] - } - }, - processingAccountId: [], - status: [], - timezone: [], - website: [] - } - ], - hasMore: [], - limit: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ] - }, - Headers: { - Content-Type: application/json - } - } - }, - { - Guid: Guid_51, - Request: { - Path: /v1/merchant-platforms/12345/processing-accounts, - Methods: [ - POST - ], - Headers: [ - { - Name: Idempotency-Key, - Matchers: [ - { - Name: ExactMatcher, - Pattern: example-string, - IgnoreCase: true } ], - IgnoreCase: true - } - ], - Body: {} - }, - Response: { - StatusCode: 201, - BodyAsJson: { - businessStartDate: [], - businessType: [], - categoryCode: [], - contactMethods: [ - [], - [], - [] - ], - contacts: [ - { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } - }, - { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } - }, - { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } - } - ], - createdDate: [], - doingBusinessAs: [], - funding: { - acceleratedFundingFee: [], - dailyDiscount: [], - fundingAccounts: [ - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - } - ], - fundingSchedule: [], - status: [] - }, - lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], - merchandiseOrServiceSold: [], - owners: [ - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, + fundingSchedule: [], + status: [] + }, + lastModifiedDate: [], + merchandiseOrServiceSold: [], + metadata: { + customerId: [] + }, + owners: [ { firstName: [], lastName: [], @@ -6692,7 +4060,6 @@ writtenRefundPolicy: [] }, transactionTypes: [ - [], [], [] ], @@ -6700,7 +4067,6 @@ }, cardAcceptance: { cardsAccepted: [ - [], [], [] ], @@ -6722,13 +4088,11 @@ } }, isSeasonal: [], - merchantId: [], monthlyAmounts: { average: [], highest: [] }, monthsOfOperation: [ - [], [], [] ], @@ -6744,6 +4108,14 @@ } }, processingAccountId: [], + signature: { + link: { + href: [], + method: [], + rel: [] + }, + type: [] + }, status: [], timezone: [], website: [] @@ -6776,21 +4148,14 @@ state: [] }, contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], dateOfBirth: [], firstName: [], identifiers: [ - { - type: [], - value: [] - }, - { - type: [], - value: [] - }, { type: [], value: [] @@ -6849,7 +4214,6 @@ Response: { StatusCode: 200, BodyAsJson: { - errorMessage: [], link: { href: [], method: [], @@ -6888,215 +4252,55 @@ Name: JsonMatcher, Pattern: { - "channel": "pos", - "processingTerminalId": "example-string", - "operator": "example-string", + "channel": "web", + "processingTerminalId": "1023", + "operator": "Postman", "order": { - "orderId": "example-string", - "dateTime": "2024-06-19T12:34:56.000\u002B00:00", - "description": "example-string", - "amount": 42, - "currency": "AED", - "breakdown": { - "subtotal": 42, - "cashbackAmount": 42, - "tip": { - "type": "percentage", - "mode": "prompted", - "amount": 42, - "percentage": 2.2 - }, - "taxes": [ - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - } - ], - "surcharge": { - "bypass": true, - "amount": 42, - "percentage": 2.2 - }, - "dualPricing": { - "offered": true, - "choiceRate": { - "applied": true, - "rate": 2.2, - "amount": 42 - }, - "alternativeTender": "card" - }, - "dutyAmount": 42, - "freightAmount": 42, - "convenienceFee": { - "amount": 42 - }, - "items": [ - { - "commodityCode": "example-string", - "productCode": "example-string", - "description": "example-string", - "unitOfMeasure": "ACR", - "unitPrice": 2.2, - "quantity": 2.2, - "discountRate": 2.2, - "taxes": [ - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - } - ] - }, - { - "commodityCode": "example-string", - "productCode": "example-string", - "description": "example-string", - "unitOfMeasure": "ACR", - "unitPrice": 2.2, - "quantity": 2.2, - "discountRate": 2.2, - "taxes": [ - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - } - ] - }, - { - "commodityCode": "example-string", - "productCode": "example-string", - "description": "example-string", - "unitOfMeasure": "ACR", - "unitPrice": 2.2, - "quantity": 2.2, - "discountRate": 2.2, - "taxes": [ - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - } - ] - } - ] - }, - "dccOffer": { - "accepted": true, - "offerReference": "example-string", - "fxAmount": 42, - "fxCurrency": "AED", - "fxCurrencyCode": "example-string", - "fxCurrencyExponent": 42, - "fxRate": 2.2, - "markup": 2.2, - "markupText": "example-string", - "provider": "example-string", - "source": "example-string" - }, - "standingInstructions": { - "sequence": "first", - "processingModel": "unscheduled", - "referenceDataOfFirstTxn": { - "paymentId": "example-string", - "cardSchemeReferenceId": "example-string" - } - } + "orderId": "order123", + "description": "Example payment", + "currency": "USD", + "amount": 100 }, "customer": { - "firstName": "example-string", - "lastName": "example-string", - "dateOfBirth": "2024-06-19", - "referenceNumber": "example-string", + "firstName": "Robert", + "lastName": "Red", "billingAddress": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", + "address1": "billing address1", + "address2": "billing address2", + "address3": "billing address3", + "city": "Los Angeles", + "state": "California", "country": "US", - "postalCode": "60056" + "postalCode": 90005 }, "shippingAddress": { - "recipientName": "example-string", + "recipientName": "shipping recipientName", "address": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", + "address1": "shipping address1", + "address2": "shipping address2", + "address3": "shipping address3", + "city": "San Diego", + "state": "California", "country": "US", - "postalCode": "60056" + "postalCode": 91911 } - }, - "contactMethods": [ - null, - null, - null - ], - "notificationLanguage": "en" - }, - "ipAddress": { - "type": "ipv4", - "value": "example-string" + } }, - "paymentMethod": {}, - "threeDSecure": {}, - "credentialOnFile": { - "externalVault": true, - "tokenize": true, - "secureTokenId": "example-string", - "mitAgreement": "unscheduled" - }, - "offlineProcessing": { - "operation": "offlineDecline", - "approvalCode": "example-string", - "dateTime": "2024-06-19T12:34:56.000\u002B00:00" - }, - "autoCapture": true, - "processAsSale": true + "paymentMethod": { + "type": "card", + "cardDetails": { + "entryMethod": "keyed", + "keyedData": { + "dataFormat": "plainText", + "device": { + "model": "paxA80", + "serialNumber": "WPC202833004712" + }, + "expiryDate": "0328", + "cardNumber": "5001650000000000" + } + } + } }, IgnoreCase: true } @@ -7106,53 +4310,9 @@ StatusCode: 201, BodyAsJson: { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], entryMethod: [], expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, securityChecks: { avsResult: [], cvvResult: [] @@ -7169,16 +4329,8 @@ postalCode: [], state: [] }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], firstName: [], lastName: [], - notificationLanguage: [], - referenceNumber: [], shippingAddress: { address: { address1: [], @@ -7195,205 +4347,17 @@ operator: [], order: { amount: [], - breakdown: { - cashbackAmount: [], - convenienceFee: { - amount: [] - }, - dualPricing: { - alternativeTender: [], - choiceRate: { - amount: [], - applied: [], - rate: [] - }, - offered: [] - }, - dutyAmount: [], - freightAmount: [], - items: [ - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - } - ], - subtotal: [], - surcharge: { - amount: [], - bypass: [], - percentage: [] - }, - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, currency: [], dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, description: [], - orderId: [], - standingInstructions: { - processingModel: [], - referenceDataOfFirstTxn: { - cardSchemeReferenceId: [], - paymentId: [] - }, - sequence: [] - } + orderId: [] }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], supportedOperations: [ + [], + [], + [], [], [], [] @@ -7401,10 +4365,7 @@ transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], responseMessage: [], status: [], @@ -7433,41 +4394,8 @@ data: [ { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], cardholderName: [], - cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], - entryMethod: [], expiryDate: [], secureToken: { customerName: [], @@ -7486,252 +4414,24 @@ }, type: [] }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } - }, operator: [], order: { amount: [], - breakdown: { - cashbackAmount: [], - convenienceFee: { - amount: [] - }, - dualPricing: { - alternativeTender: [], - choiceRate: { - amount: [], - applied: [], - rate: [] - }, - offered: [] - }, - dutyAmount: [], - freightAmount: [], - items: [ - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - } - ], - subtotal: [], - surcharge: { - amount: [], - bypass: [], - percentage: [] - }, - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, currency: [], dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, description: [], - orderId: [], - standingInstructions: { - processingModel: [], - referenceDataOfFirstTxn: { - cardSchemeReferenceId: [], - paymentId: [] - }, - sequence: [] - } + orderId: [] }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], supportedOperations: [ - [], [], [] ], transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], responseMessage: [], status: [], @@ -7740,41 +4440,8 @@ }, { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], cardholderName: [], - cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], - entryMethod: [], expiryDate: [], secureToken: { customerName: [], @@ -7793,585 +4460,125 @@ }, type: [] }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } - }, operator: [], order: { amount: [], - breakdown: { - cashbackAmount: [], - convenienceFee: { - amount: [] - }, - dualPricing: { - alternativeTender: [], - choiceRate: { - amount: [], - applied: [], - rate: [] - }, - offered: [] - }, - dutyAmount: [], - freightAmount: [], - items: [ - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - } - ], - subtotal: [], - surcharge: { - amount: [], - bypass: [], - percentage: [] - }, - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, currency: [], dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, description: [], - orderId: [], - standingInstructions: { - processingModel: [], - referenceDataOfFirstTxn: { - cardSchemeReferenceId: [], - paymentId: [] - }, - sequence: [] - } + orderId: [] }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], supportedOperations: [ - [], [], [] ], transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], responseMessage: [], status: [], type: [] } + } + ], + hasMore: [], + limit: [], + links: [ + { + href: [], + method: [], + rel: [] }, { - card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], - cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], - entryMethod: [], - expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] - }, - type: [] - }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } + href: [], + method: [], + rel: [] + } + ] + }, + Headers: { + Content-Type: application/json + } + } + }, + { + Guid: Guid_58, + Request: { + Path: /v1/payments/example-string, + Methods: [ + GET + ], + Body: {} + }, + Response: { + StatusCode: 200, + BodyAsJson: { + card: { + cardNumber: [], + entryMethod: [], + expiryDate: [], + securityChecks: { + avsResult: [], + cvvResult: [] + }, + type: [] + }, + customer: { + billingAddress: { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [] + }, + firstName: [], + lastName: [], + shippingAddress: { + address: { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [] }, - operator: [], - order: { - amount: [], - breakdown: { - cashbackAmount: [], - convenienceFee: { - amount: [] - }, - dualPricing: { - alternativeTender: [], - choiceRate: { - amount: [], - applied: [], - rate: [] - }, - offered: [] - }, - dutyAmount: [], - freightAmount: [], - items: [ - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - } - ], - subtotal: [], - surcharge: { - amount: [], - bypass: [], - percentage: [] - }, - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, - currency: [], - dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, - description: [], - orderId: [], - standingInstructions: { - processingModel: [], - referenceDataOfFirstTxn: { - cardSchemeReferenceId: [], - paymentId: [] - }, - sequence: [] - } - }, - paymentId: [], - processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - supportedOperations: [ - [], - [], - [] - ], - transactionResult: { - approvalCode: [], - authorizedAmount: [], - cardSchemeReferenceId: [], - currency: [], - ebtType: [], - processorResponseCode: [], - responseCode: [], - responseMessage: [], - status: [], - type: [] - } + recipientName: [] } + }, + operator: [], + order: { + amount: [], + currency: [], + dateTime: [], + description: [], + orderId: [] + }, + paymentId: [], + processingTerminalId: [], + supportedOperations: [ + [], + [], + [], + [], + [], + [] ], - hasMore: [], - limit: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ] + transactionResult: { + approvalCode: [], + authorizedAmount: [], + currency: [], + responseCode: [], + responseMessage: [], + status: [], + type: [] + } }, Headers: { Content-Type: application/json @@ -8379,65 +4586,63 @@ } }, { - Guid: Guid_58, + Guid: Guid_59, Request: { - Path: /v1/payments/example-string, + Path: /v1/payments/example-string/adjust, Methods: [ - GET + POST ], - Body: {} + Headers: [ + { + Name: Idempotency-Key, + Matchers: [ + { + Name: ExactMatcher, + Pattern: example-string, + IgnoreCase: true + } + ], + IgnoreCase: true + } + ], + Body: { + Matcher: { + Name: JsonMatcher, + Pattern: +{ + "adjustments": [ + { + "type": "customer", + "shippingAddress": { + "recipientName": "new recipientName", + "address": { + "address1": "new address1", + "address2": "address2", + "address3": "address3", + "city": "Miami", + "state": "Florida", + "country": "US", + "postalCode": 33101 + } + } + }, + { + "type": "order", + "amount": 1000 + } + ] +}, + IgnoreCase: true + } + } }, Response: { StatusCode: 200, BodyAsJson: { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], entryMethod: [], expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, securityChecks: { avsResult: [], cvvResult: [] @@ -8454,16 +4659,8 @@ postalCode: [], state: [] }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], firstName: [], lastName: [], - notificationLanguage: [], - referenceNumber: [], shippingAddress: { address: { address1: [], @@ -8477,208 +4674,112 @@ recipientName: [] } }, - operator: [], order: { amount: [], - breakdown: { - cashbackAmount: [], - convenienceFee: { - amount: [] - }, - dualPricing: { - alternativeTender: [], - choiceRate: { - amount: [], - applied: [], - rate: [] - }, - offered: [] - }, - dutyAmount: [], - freightAmount: [], - items: [ - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - } - ], - subtotal: [], - surcharge: { - amount: [], - bypass: [], - percentage: [] - }, - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, currency: [], dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, description: [], - orderId: [], - standingInstructions: { - processingModel: [], - referenceDataOfFirstTxn: { - cardSchemeReferenceId: [], - paymentId: [] - }, - sequence: [] - } + orderId: [] }, paymentId: [], processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] + supportedOperations: [ + [], + [], + [], + [], + [], + [] + ], + transactionResult: { + approvalCode: [], + authorizedAmount: [], + currency: [], + responseCode: [], + responseMessage: [], + status: [], + type: [] + } + }, + Headers: { + Content-Type: application/json + } + } + }, + { + Guid: Guid_60, + Request: { + Path: /v1/payments/example-string/capture, + Methods: [ + POST + ], + Headers: [ + { + Name: Idempotency-Key, + Matchers: [ + { + Name: ExactMatcher, + Pattern: example-string, + IgnoreCase: true + } + ], + IgnoreCase: true + } + ], + Body: {} + }, + Response: { + StatusCode: 200, + BodyAsJson: { + card: { + cardNumber: [], + entryMethod: [], + expiryDate: [], + securityChecks: { + avsResult: [], + cvvResult: [] }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] + type: [] + }, + customer: { + billingAddress: { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [] }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] + firstName: [], + lastName: [], + shippingAddress: { + address: { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [] }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] + recipientName: [] } - ], + }, + operator: [], + order: { + amount: [], + currency: [], + dateTime: [], + description: [], + orderId: [] + }, + paymentId: [], + processingTerminalId: [], supportedOperations: [ + [], + [], + [], [], [], [] @@ -8686,10 +4787,7 @@ transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], responseMessage: [], status: [], @@ -8702,9 +4800,9 @@ } }, { - Guid: Guid_59, + Guid: Guid_61, Request: { - Path: /v1/payments/example-string/adjust, + Path: /v1/payments/example-string/refund, Methods: [ POST ], @@ -8726,12 +4824,8 @@ Name: JsonMatcher, Pattern: { - "operator": "example-string", - "adjustments": [ - null, - null, - null - ] + "amount": 100, + "description": "refund - defective item" }, IgnoreCase: true } @@ -8741,53 +4835,9 @@ StatusCode: 200, BodyAsJson: { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], entryMethod: [], expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, securityChecks: { avsResult: [], cvvResult: [] @@ -8804,16 +4854,8 @@ postalCode: [], state: [] }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], firstName: [], lastName: [], - notificationLanguage: [], - referenceNumber: [], shippingAddress: { address: { address1: [], @@ -8830,216 +4872,34 @@ operator: [], order: { amount: [], - breakdown: { - cashbackAmount: [], - convenienceFee: { - amount: [] - }, - dualPricing: { - alternativeTender: [], - choiceRate: { - amount: [], - applied: [], - rate: [] - }, - offered: [] - }, - dutyAmount: [], - freightAmount: [], - items: [ - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - } - ], - subtotal: [], - surcharge: { - amount: [], - bypass: [], - percentage: [] - }, - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, - currency: [], - dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, - description: [], - orderId: [], - standingInstructions: { - processingModel: [], - referenceDataOfFirstTxn: { - cardSchemeReferenceId: [], - paymentId: [] - }, - sequence: [] - } - }, - paymentId: [], - processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] + currency: [], + dateTime: [], + description: [], + orderId: [] + }, + paymentId: [], + processingTerminalId: [], + refunds: [ + { + amount: [], + currency: [], + dateTime: [], + link: { + href: [], + method: [], + rel: [] }, refundId: [], - responseCode: [], - responseMessage: [], status: [] } ], supportedOperations: [ - [], - [], [] ], transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], responseMessage: [], status: [], @@ -9052,9 +4912,9 @@ } }, { - Guid: Guid_60, + Guid: Guid_62, Request: { - Path: /v1/payments/example-string/capture, + Path: /v1/payments/example-string/reverse, Methods: [ POST ], @@ -9077,53 +4937,9 @@ StatusCode: 200, BodyAsJson: { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], entryMethod: [], expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, securityChecks: { avsResult: [], cvvResult: [] @@ -9140,16 +4956,8 @@ postalCode: [], state: [] }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], firstName: [], lastName: [], - notificationLanguage: [], - referenceNumber: [], shippingAddress: { address: { address1: [], @@ -9163,224 +4971,150 @@ recipientName: [] } }, - operator: [], order: { amount: [], - breakdown: { - cashbackAmount: [], - convenienceFee: { - amount: [] - }, - dualPricing: { - alternativeTender: [], - choiceRate: { + currency: [], + dateTime: [], + description: [], + orderId: [] + }, + paymentId: [], + processingTerminalId: [], + supportedOperations: [ + [], + [], + [], + [], + [], + [] + ], + transactionResult: { + approvalCode: [], + authorizedAmount: [], + currency: [], + responseCode: [], + responseMessage: [], + status: [], + type: [] + } + }, + Headers: { + Content-Type: application/json + } + } + }, + { + Guid: Guid_63, + Request: { + Path: /v1/pricing-intents, + Methods: [ + GET + ], + Body: {} + }, + Response: { + StatusCode: 200, + BodyAsJson: { + count: [], + data: [ + { + base: { + addressVerification: [], + annualFee: { amount: [], - applied: [], - rate: [] + billInMonth: [] + }, + batch: [], + chargeback: [], + earlyTermination: [], + maintenance: [], + merchantAdvantage: [], + minimum: [], + pciNonCompliance: [], + platinumSecurity: { + amount: [], + billingFrequency: [] }, - offered: [] + regulatoryAssistanceProgram: [], + retrieval: [], + voiceAuthorization: [] }, - dutyAmount: [], - freightAmount: [], - items: [ - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] + country: [], + createdDate: [], + gateway: { + fees: { + additionalServiceMonthly: [], + monthly: [], + perDeviceMonthly: [], + perTransaction: [], + setup: [] + } + }, + id: [], + key: [], + lastUpdatedDate: [], + processor: { + ach: { + fees: { + accountVerification: [], + batch: [], + discountRateAbove10000: [], + discountRateUnder10000: [], + monthlyMinimum: [], + returns: [], + statement: [], + transaction: [], + unauthorizedReturn: [] + } + }, + card: { + fees: { + amex: { + transaction: [], + type: [], + volume: [] }, - { - amount: [], - name: [], - rate: [] + electronicBenefitsTransfer: { + transaction: [] }, - { - amount: [], - name: [], - rate: [] + enhancedInterchange: { + creditToMerchant: [], + enrollment: [] + }, + mastercardVisaDiscover: { + transaction: [], + volume: [] + }, + pinDebit: { + additionalDiscount: [], + monthlyAccess: [], + transaction: [] + }, + specialityCards: { + transaction: [] } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - } - ], - subtotal: [], - surcharge: { - amount: [], - bypass: [], - percentage: [] - }, - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] + }, + planType: [] } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, - currency: [], - dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, - description: [], - orderId: [], - standingInstructions: { - processingModel: [], - referenceDataOfFirstTxn: { - cardSchemeReferenceId: [], - paymentId: [] }, - sequence: [] + status: [], + version: [] } - }, - paymentId: [], - processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, + ], + hasMore: [], + limit: [], + links: [ { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] + href: [], + method: [], + rel: [] }, { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] + href: [], + method: [], + rel: [] } - ], - supportedOperations: [ - [], - [], - [] - ], - transactionResult: { - approvalCode: [], - authorizedAmount: [], - cardSchemeReferenceId: [], - currency: [], - ebtType: [], - processorResponseCode: [], - responseCode: [], - responseMessage: [], - status: [], - type: [] - } + ] }, Headers: { Content-Type: application/json @@ -9388,9 +5122,9 @@ } }, { - Guid: Guid_61, + Guid: Guid_64, Request: { - Path: /v1/payments/example-string/refund, + Path: /v1/pricing-intents, Methods: [ POST ], @@ -9407,327 +5141,198 @@ IgnoreCase: true } ], - Body: { - Matcher: { - Name: JsonMatcher, - Pattern: -{ - "operator": "example-string", - "amount": 42, - "description": "example-string" -}, - IgnoreCase: true - } - } + Body: {} }, Response: { - StatusCode: 200, + StatusCode: 201, BodyAsJson: { - card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], - cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], - entryMethod: [], - expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] + base: { + addressVerification: [], + annualFee: { + amount: [], + billInMonth: [] + }, + batch: [], + chargeback: [], + earlyTermination: [], + maintenance: [], + merchantAdvantage: [], + minimum: [], + pciNonCompliance: [], + platinumSecurity: { + amount: [], + billingFrequency: [] }, - type: [] + regulatoryAssistanceProgram: [], + retrieval: [], + voiceAuthorization: [] }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] + country: [], + createdDate: [], + gateway: { + fees: { + additionalServiceMonthly: [], + monthly: [], + perDeviceMonthly: [], + perTransaction: [], + setup: [] } }, - operator: [], - order: { - amount: [], - breakdown: { - cashbackAmount: [], - convenienceFee: { - amount: [] - }, - dualPricing: { - alternativeTender: [], - choiceRate: { - amount: [], - applied: [], - rate: [] + id: [], + key: [], + lastUpdatedDate: [], + metadata: { + internalReference: [] + }, + processor: { + ach: { + fees: { + accountVerification: [], + batch: [], + discountRateAbove10000: [], + discountRateUnder10000: [], + monthlyMinimum: [], + returns: [], + statement: [], + transaction: [], + unauthorizedReturn: [] + } + }, + card: { + fees: { + amex: { + transaction: [], + type: [], + volume: [] }, - offered: [] + electronicBenefitsTransfer: { + transaction: [] + }, + enhancedInterchange: { + creditToMerchant: [], + enrollment: [] + }, + mastercardVisaDiscover: { + transaction: [], + volume: [] + }, + pinDebit: { + additionalDiscount: [], + monthlyAccess: [], + transaction: [] + }, + specialityCards: { + transaction: [] + } }, - dutyAmount: [], - freightAmount: [], - items: [ - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] + planType: [] + } + }, + status: [], + version: [] + }, + Headers: { + Content-Type: application/json, + location: example-string + } + } + }, + { + Guid: Guid_65, + Request: { + Path: /v1/pricing-intents/{pricingIntentId}, + Methods: [ + GET + ], + Body: {} + }, + Response: { + StatusCode: 200, + BodyAsJson: { + base: { + addressVerification: [], + annualFee: { + amount: [], + billInMonth: [] + }, + batch: [], + chargeback: [], + earlyTermination: [], + maintenance: [], + merchantAdvantage: [], + minimum: [], + pciNonCompliance: [], + platinumSecurity: { + amount: [], + billingFrequency: [] + }, + regulatoryAssistanceProgram: [], + retrieval: [], + voiceAuthorization: [] + }, + country: [], + createdDate: [], + gateway: { + fees: { + additionalServiceMonthly: [], + monthly: [], + perDeviceMonthly: [], + perTransaction: [], + setup: [] + } + }, + id: [], + key: [], + lastUpdatedDate: [], + metadata: { + internalReference: [] + }, + processor: { + ach: { + fees: { + accountVerification: [], + batch: [], + discountRateAbove10000: [], + discountRateUnder10000: [], + monthlyMinimum: [], + returns: [], + statement: [], + transaction: [], + unauthorizedReturn: [] + } + }, + card: { + fees: { + amex: { + transaction: [], + type: [], + volume: [] }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] + electronicBenefitsTransfer: { + transaction: [] }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - } - ], - subtotal: [], - surcharge: { - amount: [], - bypass: [], - percentage: [] - }, - taxes: [ - { - amount: [], - name: [], - rate: [] + enhancedInterchange: { + creditToMerchant: [], + enrollment: [] }, - { - amount: [], - name: [], - rate: [] + mastercardVisaDiscover: { + transaction: [], + volume: [] }, - { - amount: [], - name: [], - rate: [] + pinDebit: { + additionalDiscount: [], + monthlyAccess: [], + transaction: [] + }, + specialityCards: { + transaction: [] } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, - currency: [], - dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, - description: [], - orderId: [], - standingInstructions: { - processingModel: [], - referenceDataOfFirstTxn: { - cardSchemeReferenceId: [], - paymentId: [] }, - sequence: [] + planType: [] } }, - paymentId: [], - processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - supportedOperations: [ - [], - [], - [] - ], - transactionResult: { - approvalCode: [], - authorizedAmount: [], - cardSchemeReferenceId: [], - currency: [], - ebtType: [], - processorResponseCode: [], - responseCode: [], - responseMessage: [], - status: [], - type: [] - } + status: [], + version: [] }, Headers: { Content-Type: application/json @@ -9735,11 +5340,24 @@ } }, { - Guid: Guid_62, + Guid: Guid_66, Request: { - Path: /v1/payments/example-string/reverse, + Path: /v1/pricing-intents/{pricingIntentId}, Methods: [ - POST + PUT + ], + Body: {} + }, + Response: { + StatusCode: 204 + } + }, + { + Guid: Guid_67, + Request: { + Path: /v1/pricing-intents/{pricingIntentId}, + Methods: [ + PATCH ], Headers: [ { @@ -9759,350 +5377,90 @@ Response: { StatusCode: 200, BodyAsJson: { - card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], - cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], - entryMethod: [], - expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] + base: { + addressVerification: [], + annualFee: { + amount: [], + billInMonth: [] + }, + batch: [], + chargeback: [], + earlyTermination: [], + maintenance: [], + merchantAdvantage: [], + minimum: [], + pciNonCompliance: [], + platinumSecurity: { + amount: [], + billingFrequency: [] }, - type: [] + regulatoryAssistanceProgram: [], + retrieval: [], + voiceAuthorization: [] }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] + country: [], + createdDate: [], + gateway: { + fees: { + additionalServiceMonthly: [], + monthly: [], + perDeviceMonthly: [], + perTransaction: [], + setup: [] } }, - operator: [], - order: { - amount: [], - breakdown: { - cashbackAmount: [], - convenienceFee: { - amount: [] - }, - dualPricing: { - alternativeTender: [], - choiceRate: { - amount: [], - applied: [], - rate: [] + id: [], + key: [], + lastUpdatedDate: [], + metadata: { + internalReference: [] + }, + processor: { + ach: { + fees: { + accountVerification: [], + batch: [], + discountRateAbove10000: [], + discountRateUnder10000: [], + monthlyMinimum: [], + returns: [], + statement: [], + transaction: [], + unauthorizedReturn: [] + } + }, + card: { + fees: { + amex: { + transaction: [], + type: [], + volume: [] }, - offered: [] - }, - dutyAmount: [], - freightAmount: [], - items: [ - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] + electronicBenefitsTransfer: { + transaction: [] }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] + enhancedInterchange: { + creditToMerchant: [], + enrollment: [] }, - { - commodityCode: [], - description: [], - discountRate: [], - productCode: [], - quantity: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ], - unitOfMeasure: [], - unitPrice: [] - } - ], - subtotal: [], - surcharge: { - amount: [], - bypass: [], - percentage: [] - }, - taxes: [ - { - amount: [], - name: [], - rate: [] + mastercardVisaDiscover: { + transaction: [], + volume: [] }, - { - amount: [], - name: [], - rate: [] + pinDebit: { + additionalDiscount: [], + monthlyAccess: [], + transaction: [] }, - { - amount: [], - name: [], - rate: [] + specialityCards: { + transaction: [] } - ], - tip: { - amount: [], - mode: [], - percentage: [], - type: [] - } - }, - currency: [], - dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, - description: [], - orderId: [], - standingInstructions: { - processingModel: [], - referenceDataOfFirstTxn: { - cardSchemeReferenceId: [], - paymentId: [] }, - sequence: [] + planType: [] } }, - paymentId: [], - processingTerminalId: [], - refunds: [ - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - refundId: [], - responseCode: [], - responseMessage: [], - status: [] - } - ], - supportedOperations: [ - [], - [], - [] - ], - transactionResult: { - approvalCode: [], - authorizedAmount: [], - cardSchemeReferenceId: [], - currency: [], - ebtType: [], - processorResponseCode: [], - responseCode: [], - responseMessage: [], - status: [], - type: [] - } - }, - Headers: { - Content-Type: application/json - } - } - }, - { - Guid: Guid_63, - Request: { - Path: /v1/pricing-intents, - Methods: [ - GET - ], - Body: {} - }, - Response: { - StatusCode: 200, - BodyAsJson: { - count: [], - data: [], - hasMore: [], - limit: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ] + status: [], + version: [] }, Headers: { Content-Type: application/json @@ -10110,110 +5468,22 @@ } }, { - Guid: Guid_64, + Guid: Guid_68, Request: { - Path: /v1/pricing-intents, + Path: /v1/pricing-intents/{pricingIntentId}, Methods: [ - POST - ], - Headers: [ - { - Name: Idempotency-Key, - Matchers: [ - { - Name: ExactMatcher, - Pattern: example-string, - IgnoreCase: true - } - ], - IgnoreCase: true - } + DELETE ], Body: {} }, Response: { - StatusCode: 201, - Headers: { - Content-Type: application/json, - location: example-string - } + StatusCode: 204 } }, { - Guid: Guid_65, + Guid: Guid_69, Request: { - Path: /v1/pricing-intents/{pricingIntentId}, - Methods: [ - GET - ], - Body: {} - }, - Response: { - StatusCode: 200, - Headers: { - Content-Type: application/json - } - } - }, - { - Guid: Guid_66, - Request: { - Path: /v1/pricing-intents/{pricingIntentId}, - Methods: [ - PUT - ], - Body: {} - }, - Response: { - StatusCode: 204 - } - }, - { - Guid: Guid_67, - Request: { - Path: /v1/pricing-intents/{pricingIntentId}, - Methods: [ - PATCH - ], - Headers: [ - { - Name: Idempotency-Key, - Matchers: [ - { - Name: ExactMatcher, - Pattern: example-string, - IgnoreCase: true - } - ], - IgnoreCase: true - } - ], - Body: {} - }, - Response: { - StatusCode: 200, - Headers: { - Content-Type: application/json - } - } - }, - { - Guid: Guid_68, - Request: { - Path: /v1/pricing-intents/{pricingIntentId}, - Methods: [ - DELETE - ], - Body: {} - }, - Response: { - StatusCode: 204 - } - }, - { - Guid: Guid_69, - Request: { - Path: /v1/processing-accounts/12345, + Path: /v1/processing-accounts/12345, Methods: [ GET ], @@ -10222,35 +5492,25 @@ Response: { StatusCode: 200, BodyAsJson: { + address: { + address1: [], + address2: [], + address3: [], + city: [], + country: [], + postalCode: [], + state: [] + }, businessStartDate: [], businessType: [], categoryCode: [], contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], contacts: [ - { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } - }, - { - contactId: [], - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - } - }, { contactId: [], firstName: [], @@ -10268,24 +5528,6 @@ acceleratedFundingFee: [], dailyDiscount: [], fundingAccounts: [ - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, - { - fundingAccountId: [], - link: { - href: [], - method: [], - rel: [] - }, - status: [] - }, { fundingAccountId: [], link: { @@ -10300,45 +5542,11 @@ status: [] }, lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], merchandiseOrServiceSold: [], + metadata: { + customerId: [] + }, owners: [ - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, - { - firstName: [], - lastName: [], - link: { - href: [], - method: [], - rel: [] - }, - ownerId: [] - }, { firstName: [], lastName: [], @@ -10372,7 +5580,6 @@ writtenRefundPolicy: [] }, transactionTypes: [ - [], [], [] ], @@ -10380,7 +5587,6 @@ }, cardAcceptance: { cardsAccepted: [ - [], [], [] ], @@ -10408,7 +5614,6 @@ highest: [] }, monthsOfOperation: [ - [], [], [] ], @@ -10424,6 +5629,14 @@ } }, processingAccountId: [], + signature: { + link: { + href: [], + method: [], + rel: [] + }, + type: [] + }, status: [], timezone: [], website: [] @@ -10450,12 +5663,6 @@ { contactId: [], contactMethods: [ - [], - [], - [] - ], - firstName: [], - identifiers: [ { type: [], value: [] @@ -10469,27 +5676,8 @@ value: [] } ], - lastName: [], - middleName: [], - type: [] - }, - { - contactId: [], - contactMethods: [ - [], - [], - [] - ], firstName: [], identifiers: [ - { - type: [], - value: [] - }, - { - type: [], - value: [] - }, { type: [], value: [] @@ -10502,12 +5690,6 @@ { contactId: [], contactMethods: [ - [], - [], - [] - ], - firstName: [], - identifiers: [ { type: [], value: [] @@ -10521,6 +5703,13 @@ value: [] } ], + firstName: [], + identifiers: [ + { + type: [], + value: [] + } + ], lastName: [], middleName: [], type: [] @@ -10534,11 +5723,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -10568,27 +5752,24 @@ fundingAccountId: [], lastModifiedDate: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], rel: [] } ], + metadata: { + internalRef: [] + }, nameOnAccount: [], paymentMethods: [ - [], - [], - [] + { + type: [], + value: { + accountNumber: [], + routingNumber: [] + } + } ], status: [], type: [], @@ -10599,58 +5780,24 @@ fundingAccountId: [], lastModifiedDate: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], rel: [] } ], + metadata: { + internalRef: [] + }, nameOnAccount: [], paymentMethods: [ - [], - [], - [] - ], - status: [], - type: [], - use: [] - }, - { - createdDate: [], - fundingAccountId: [], - lastModifiedDate: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - } - ], - nameOnAccount: [], - paymentMethods: [ - [], - [], - [] + { + type: [], + value: { + accountNumber: [], + routingNumber: [] + } + } ], status: [], type: [], @@ -10687,17 +5834,6 @@ state: [] }, contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - identifiers: [ - { - type: [], - value: [] - }, { type: [], value: [] @@ -10707,42 +5843,9 @@ value: [] } ], - lastName: [], - middleName: [], - ownerId: [], - relationship: { - equityPercentage: [], - isAuthorizedSignatory: [], - isControlProng: [], - title: [] - } - }, - { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], dateOfBirth: [], firstName: [], identifiers: [ - { - type: [], - value: [] - }, - { - type: [], - value: [] - }, { type: [], value: [] @@ -10769,21 +5872,14 @@ state: [] }, contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], dateOfBirth: [], firstName: [], identifiers: [ - { - type: [], - value: [] - }, - { - type: [], - value: [] - }, { type: [], value: [] @@ -10808,11 +5904,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -10836,6 +5927,84 @@ }, Response: { StatusCode: 200, + BodyAsJson: { + base: { + addressVerification: [], + annualFee: { + amount: [], + billInMonth: [] + }, + batch: [], + chargeback: [], + earlyTermination: [], + maintenance: [], + merchantAdvantage: [], + minimum: [], + pciNonCompliance: [], + platinumSecurity: { + amount: [], + billingFrequency: [] + }, + regulatoryAssistanceProgram: [], + retrieval: [], + voiceAuthorization: [] + }, + country: [], + gateway: { + fees: { + additionalServiceMonthly: [], + monthly: [], + perDeviceMonthly: [], + perTransaction: [], + setup: [] + } + }, + processor: { + ach: { + fees: { + accountVerification: [], + batch: [], + discountRateAbove10000: [], + discountRateUnder10000: [], + monthlyMinimum: [], + returns: [], + statement: [], + transaction: [], + unauthorizedReturn: [] + } + }, + card: { + fees: { + amex: { + transaction: [], + type: [], + volume: [] + }, + electronicBenefitsTransfer: { + transaction: [] + }, + enhancedInterchange: { + creditToMerchant: [], + enrollment: [] + }, + mastercardVisaDiscover: { + transaction: [], + volume: [] + }, + pinDebit: { + additionalDiscount: [], + monthlyAccess: [], + transaction: [] + }, + specialityCards: { + transaction: [] + } + }, + planType: [] + } + }, + version: [] + }, Headers: { Content-Type: application/json } @@ -10852,6 +6021,10 @@ }, Response: { StatusCode: 201, + BodyAsJson: { + reminderId: [], + type: [] + }, Headers: { Content-Type: application/json } @@ -10882,63 +6055,40 @@ Name: JsonMatcher, Pattern: { - "paymentPlanId": "example-string", - "processingTerminalId": "example-string", - "name": "example-string", - "description": "example-string", - "currency": "AED", + "paymentPlanId": "1001_yearly_plan", + "name": "1001 yearly payment plan", + "description": "1001 yearly payment plan", + "currency": "EUR", "setupOrder": { - "amount": 42, - "description": "example-string", + "amount": 1010, + "description": "payment plan setup order", "breakdown": { - "subtotal": 42, + "subtotal": 1000, "taxes": [ { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 + "name": "VAT", + "rate": 1 } ] } }, "recurringOrder": { - "amount": 42, - "description": "example-string", + "amount": 1010, + "description": "payment plan setup order", "breakdown": { - "subtotal": 42, + "subtotal": 1000, "taxes": [ { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 + "name": "VAT", + "rate": 1 } ] } }, - "length": 42, - "type": "manual", - "frequency": "weekly", - "onUpdate": "update", + "length": 5, + "type": "automatic", + "frequency": "yearly", + "onUpdate": "continue", "onDelete": "complete" }, IgnoreCase: true @@ -10963,17 +6113,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -10987,17 +6126,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -11037,54 +6165,6 @@ onUpdate: [], paymentPlanId: [], processingTerminalId: [], - recurringOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [] - }, - setupOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [] - }, type: [] }, { @@ -11097,129 +6177,16 @@ onUpdate: [], paymentPlanId: [], processingTerminalId: [], - recurringOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [] - }, - setupOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [] - }, type: [] - }, - { - currency: [], - description: [], - frequency: [], - length: [], - name: [], - onDelete: [], - onUpdate: [], - paymentPlanId: [], - processingTerminalId: [], - recurringOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [] - }, - setupOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [] - }, - type: [] - } - ], - hasMore: [], - limit: [], - links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] + } + ], + hasMore: [], + limit: [], + links: [ + { + href: [], + method: [], + rel: [] }, { href: [], @@ -11260,17 +6227,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -11284,17 +6240,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -11389,17 +6334,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -11413,17 +6347,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -11476,48 +6399,59 @@ Name: JsonMatcher, Pattern: { - "secureTokenId": "example-string", - "operator": "example-string", + "operator": "Adam Smith", "mitAgreement": "unscheduled", "customer": { - "firstName": "example-string", - "lastName": "example-string", - "dateOfBirth": "2024-06-19", - "referenceNumber": "example-string", + "firstName": "Jessica", + "lastName": "Red", + "dateOfBirth": "1990-01-01", + "referenceNumber": "Customer-12", "billingAddress": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", + "address1": "Example Street", + "address2": "Example address2", + "address3": "Example address3", + "city": "Fresno", + "state": "California", "country": "US", - "postalCode": "60056" + "postalCode": 93650 }, "shippingAddress": { - "recipientName": "example-string", + "recipientName": "Example shipping recipientName", "address": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", + "address1": "Example shipping street", + "address2": "Example shipping address2", + "address3": "Exampleshipping address3", + "city": "Austin", + "state": "Texas", "country": "US", - "postalCode": "60056" + "postalCode": 73301 } }, "contactMethods": [ - null, - null, - null + { + "type": "email", + "value": "jessicared@mail.com" + } ], "notificationLanguage": "en" }, "ipAddress": { "type": "ipv4", - "value": "example-string" - }, - "source": {}, - "threeDSecure": {} + "value": "124.201.101.1" + }, + "source": { + "type": "card", + "cardDetails": { + "entryMethod": "keyed", + "cardholderName": "Joe Bloggs", + "keyedData": { + "dataFormat": "plainText", + "cardNumber": "4001020000000009", + "expiryDate": "0825", + "cvv": "713" + } + } + } }, IgnoreCase: true } @@ -11537,9 +6471,10 @@ state: [] }, contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], dateOfBirth: [], firstName: [], @@ -11562,6 +6497,12 @@ mitAgreement: [], processingTerminalId: [], secureTokenId: [], + source: { + cardholderName: [], + cardNumber: [], + expiryDate: [], + type: [] + }, status: [], token: [] }, @@ -11596,15 +6537,9 @@ postalCode: [], state: [] }, - contactMethods: [ - [], - [], - [] - ], dateOfBirth: [], firstName: [], lastName: [], - notificationLanguage: [], referenceNumber: [], shippingAddress: { address: { @@ -11622,46 +6557,12 @@ mitAgreement: [], processingTerminalId: [], secureTokenId: [], - status: [], - token: [] - }, - { - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } + source: { + cardholderName: [], + cardNumber: [], + expiryDate: [], + type: [] }, - mitAgreement: [], - processingTerminalId: [], - secureTokenId: [], status: [], token: [] }, @@ -11676,15 +6577,9 @@ postalCode: [], state: [] }, - contactMethods: [ - [], - [], - [] - ], dateOfBirth: [], firstName: [], lastName: [], - notificationLanguage: [], referenceNumber: [], shippingAddress: { address: { @@ -11702,6 +6597,12 @@ mitAgreement: [], processingTerminalId: [], secureTokenId: [], + source: { + cardholderName: [], + cardNumber: [], + expiryDate: [], + type: [] + }, status: [], token: [] } @@ -11714,11 +6615,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -11754,9 +6650,10 @@ state: [] }, contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], dateOfBirth: [], firstName: [], @@ -11779,6 +6676,12 @@ mitAgreement: [], processingTerminalId: [], secureTokenId: [], + source: { + cardholderName: [], + cardNumber: [], + expiryDate: [], + type: [] + }, status: [], token: [] }, @@ -11863,9 +6766,10 @@ state: [] }, contactMethods: [ - [], - [], - [] + { + type: [], + value: [] + } ], dateOfBirth: [], firstName: [], @@ -11888,6 +6792,12 @@ mitAgreement: [], processingTerminalId: [], secureTokenId: [], + source: { + cardholderName: [], + cardNumber: [], + expiryDate: [], + type: [] + }, status: [], token: [] }, @@ -11934,64 +6844,45 @@ Name: JsonMatcher, Pattern: { - "subscriptionId": "example-string", - "paymentPlanId": "example-string", - "paymentMethod": {}, - "name": "example-string", - "description": "example-string", + "subscriptionId": "11001_subscription_cinema", + "paymentPlanId": "1001_payment_plan_yearly", + "paymentMethod": { + "type": "secureToken", + "token": "2967533500670317" + }, + "name": "subscription from postman", + "description": "created through postman for card token", "setupOrder": { - "amount": 42, - "description": "example-string", + "amount": 1010, + "description": "setup order", "breakdown": { - "subtotal": 42, + "subtotal": 1000, "taxes": [ { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 + "name": "VAT", + "rate": 1 } ] }, - "orderId": "example-string" + "orderId": "setup order" }, "recurringOrder": { - "amount": 42, - "description": "example-string", + "amount": 1010, + "description": "recurring order", "breakdown": { - "subtotal": 42, + "subtotal": 1000, "taxes": [ { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 - }, - { - "name": "example-string", - "rate": 2.2, - "amount": 42 + "name": "VAT", + "rate": 1 } ] } }, - "startDate": "2024-06-19", - "endDate": "2024-06-19", - "length": 42, - "pauseCollectionFor": 42 + "startDate": "2023-07-01", + "endDate": "2025-07-01", + "length": 2, + "pauseCollectionFor": 0 }, IgnoreCase: true } @@ -12029,17 +6920,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12064,17 +6944,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12132,28 +7001,7 @@ }, processingTerminalId: [], recurringOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [] + amount: [] }, secureToken: { customerName: [], @@ -12168,114 +7016,6 @@ }, setupOrder: { amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [], - orderId: [] - }, - startDate: [], - subscriptionId: [], - type: [] - }, - { - currency: [], - currentState: { - nextDueDate: [], - outstandingInvoices: [], - paidInvoices: [], - status: [] - }, - description: [], - endDate: [], - frequency: [], - length: [], - name: [], - pauseCollectionFor: [], - paymentPlan: { - link: { - href: [], - method: [], - rel: [] - }, - name: [], - paymentPlanId: [] - }, - processingTerminalId: [], - recurringOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [] - }, - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - setupOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, description: [], orderId: [] }, @@ -12308,28 +7048,7 @@ }, processingTerminalId: [], recurringOrder: { - amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [] + amount: [] }, secureToken: { customerName: [], @@ -12344,27 +7063,6 @@ }, setupOrder: { amount: [], - breakdown: { - subtotal: [], - taxes: [ - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - } - ] - }, - description: [], orderId: [] }, startDate: [], @@ -12380,11 +7078,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -12438,17 +7131,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12473,17 +7155,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12595,17 +7266,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12630,17 +7290,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12699,17 +7348,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12734,17 +7372,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12781,8 +7408,32 @@ ], IgnoreCase: true } + ], + Body: { + Matcher: { + Name: JsonMatcher, + Pattern: +{ + "operator": "Giuseppe Green", + "order": { + "amount": 1010, + "description": "manual payment", + "breakdown": { + "subtotal": 1000, + "taxes": [ + { + "name": "VAT", + "rate": 1 + } ] }, + "orderId": "manual payment orderx12s" + } +}, + IgnoreCase: true + } + } + }, Response: { StatusCode: 201, BodyAsJson: { @@ -12803,7 +7454,6 @@ }, paymentId: [], responseCode: [], - responseMessage: [], status: [] }, processingTerminalId: [], @@ -12867,17 +7517,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12902,17 +7541,6 @@ subtotal: [], taxes: [ { - amount: [], - name: [], - rate: [] - }, - { - amount: [], - name: [], - rate: [] - }, - { - amount: [], name: [], rate: [] } @@ -12942,7 +7570,6 @@ Response: { StatusCode: 200, BodyAsJson: { - errorMessage: [], link: { href: [], method: [], @@ -12981,67 +7608,29 @@ Name: JsonMatcher, Pattern: { - "channel": "pos", - "processingTerminalId": "example-string", - "operator": "example-string", + "processingTerminalId": "1023", "order": { - "orderId": "example-string", - "dateTime": "2024-06-19T12:34:56.000\u002B00:00", - "description": "example-string", - "amount": 42, - "currency": "AED", - "dccOffer": { - "accepted": true, - "offerReference": "example-string", - "fxAmount": 42, - "fxCurrency": "AED", - "fxCurrencyCode": "example-string", - "fxCurrencyExponent": 42, - "fxRate": 2.2, - "markup": 2.2, - "markupText": "example-string", - "provider": "example-string", - "source": "example-string" + "orderId": "1023_refund_oa8", + "description": "refund example", + "amount": 1000, + "currency": "USD" + }, + "channel": "web", + "refundMethod": { + "type": "card", + "cardDetails": { + "entryMethod": "keyed", + "keyedData": { + "dataFormat": "plainText", + "device": { + "type": "DATECS_BLUEPAD50", + "serialNumber": "WPC202833004712" + }, + "expiryDate": "0328", + "cardNumber": "5001650000000000" + } } - }, - "customer": { - "firstName": "example-string", - "lastName": "example-string", - "dateOfBirth": "2024-06-19", - "referenceNumber": "example-string", - "billingAddress": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" - }, - "shippingAddress": { - "recipientName": "example-string", - "address": { - "address1": "1 Example Ave.", - "address2": "Example Address Line 2", - "address3": "Example Address Line 3", - "city": "Chicago", - "state": "Illinois", - "country": "US", - "postalCode": "60056" - } - }, - "contactMethods": [ - null, - null, - null - ], - "notificationLanguage": "en" - }, - "ipAddress": { - "type": "ipv4", - "value": "example-string" - }, - "refundMethod": {} + } }, IgnoreCase: true } @@ -13051,590 +7640,94 @@ StatusCode: 201, BodyAsJson: { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], entryMethod: [], expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] - }, type: [] }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } - }, - operator: [], order: { amount: [], currency: [], dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, description: [], orderId: [] }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, processingTerminalId: [], refundId: [], - supportedOperations: [ - [], - [], - [] - ], transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], - responseMessage: [], - status: [], - type: [] - } - }, - Headers: { - Content-Type: application/json, - location: example-string - } - } - }, - { - Guid: Guid_94, - Request: { - Path: /v1/refunds, - Methods: [ - GET - ], - Body: {} - }, - Response: { - StatusCode: 200, - BodyAsJson: { - count: [], - data: [ - { - card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], - cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], - entryMethod: [], - expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] - }, - type: [] - }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } - }, - operator: [], - order: { - amount: [], - currency: [], - dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, - description: [], - orderId: [] - }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - processingTerminalId: [], - refundId: [], - supportedOperations: [ - [], - [], - [] - ], - transactionResult: { - approvalCode: [], - authorizedAmount: [], - cardSchemeReferenceId: [], - currency: [], - ebtType: [], - processorResponseCode: [], - responseCode: [], - responseMessage: [], - status: [], - type: [] - } - }, - { - card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], - cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], - entryMethod: [], - expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] - }, - type: [] - }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } - }, - operator: [], - order: { - amount: [], - currency: [], - dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, - description: [], - orderId: [] - }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, - processingTerminalId: [], - refundId: [], - supportedOperations: [ - [], - [], - [] - ], - transactionResult: { - approvalCode: [], - authorizedAmount: [], - cardSchemeReferenceId: [], - currency: [], - ebtType: [], - processorResponseCode: [], - responseCode: [], - responseMessage: [], - status: [], - type: [] - } - }, - { - card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], - cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], - entryMethod: [], - expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] - }, - type: [] - }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } + responseMessage: [], + status: [], + type: [] + } + }, + Headers: { + Content-Type: application/json, + location: example-string + } + } + }, + { + Guid: Guid_94, + Request: { + Path: /v1/refunds, + Methods: [ + GET + ], + Body: {} + }, + Response: { + StatusCode: 200, + BodyAsJson: { + count: [], + data: [ + { + card: { + cardNumber: [], + expiryDate: [], + type: [] }, - operator: [], order: { amount: [], currency: [], dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, description: [], orderId: [] }, - payment: { - amount: [], + processingTerminalId: [], + refundId: [], + transactionResult: { + approvalCode: [], + authorizedAmount: [], currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], responseCode: [], responseMessage: [], - status: [] + status: [], + type: [] + } + }, + { + card: { + cardNumber: [], + expiryDate: [], + type: [] + }, + order: { + amount: [], + currency: [], + dateTime: [], + description: [], + orderId: [] }, processingTerminalId: [], refundId: [], - supportedOperations: [ - [], - [], - [] - ], transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], responseMessage: [], status: [], @@ -13650,11 +7743,6 @@ method: [], rel: [] }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [], @@ -13680,141 +7768,24 @@ StatusCode: 200, BodyAsJson: { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], entryMethod: [], expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] - }, type: [] }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } - }, - operator: [], order: { amount: [], currency: [], dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, description: [], orderId: [] }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, processingTerminalId: [], refundId: [], - supportedOperations: [ - [], - [], - [] - ], transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], responseMessage: [], status: [], @@ -13851,11 +7822,17 @@ Name: JsonMatcher, Pattern: { - "operator": "example-string", + "operator": "Adam Smith", "adjustments": [ - null, - null, - null + { + "type": "customer", + "contactMethods": [ + { + "type": "mobile", + "value": "\u002B14155556666" + } + ] + } ] }, IgnoreCase: true @@ -13866,141 +7843,33 @@ StatusCode: 200, BodyAsJson: { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], - cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], - entryMethod: [], - expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] - }, - type: [] - }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } + cardNumber: [], + entryMethod: [], + expiryDate: [], + type: [] + }, + customer: { + contactMethods: [ + { + type: [], + value: [] + } + ] }, operator: [], order: { amount: [], currency: [], dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, description: [], orderId: [] }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, processingTerminalId: [], refundId: [], - supportedOperations: [ - [], - [], - [] - ], transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], responseMessage: [], status: [], @@ -14038,141 +7907,24 @@ StatusCode: 200, BodyAsJson: { card: { - balances: [ - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - }, - { - amount: [], - benefitCategory: [], - currency: [] - } - ], - cardholderName: [], - cardholderSignature: [], cardNumber: [], - emvTags: [ - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - }, - { - hex: [], - value: [] - } - ], entryMethod: [], expiryDate: [], - secureToken: { - customerName: [], - link: { - href: [], - method: [], - rel: [] - }, - secureTokenId: [], - status: [], - token: [] - }, - securityChecks: { - avsResult: [], - cvvResult: [] - }, type: [] }, - customer: { - billingAddress: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - contactMethods: [ - [], - [], - [] - ], - dateOfBirth: [], - firstName: [], - lastName: [], - notificationLanguage: [], - referenceNumber: [], - shippingAddress: { - address: { - address1: [], - address2: [], - address3: [], - city: [], - country: [], - postalCode: [], - state: [] - }, - recipientName: [] - } - }, - operator: [], order: { amount: [], currency: [], dateTime: [], - dccOffer: { - accepted: [], - fxAmount: [], - fxCurrency: [], - fxCurrencyCode: [], - fxCurrencyExponent: [], - fxRate: [], - markup: [], - markupText: [], - offerReference: [], - provider: [], - source: [] - }, description: [], orderId: [] }, - payment: { - amount: [], - currency: [], - dateTime: [], - link: { - href: [], - method: [], - rel: [] - }, - paymentId: [], - responseCode: [], - responseMessage: [], - status: [] - }, processingTerminalId: [], refundId: [], - supportedOperations: [ - [], - [], - [] - ], transactionResult: { approvalCode: [], authorizedAmount: [], - cardSchemeReferenceId: [], currency: [], - ebtType: [], - processorResponseCode: [], responseCode: [], responseMessage: [], status: [], @@ -14222,120 +7974,6 @@ BodyAsJson: { count: [], data: [ - { - amount: [], - authorization: { - amount: [], - authorizationId: [], - avsResponseCode: [], - code: [], - link: { - href: [], - method: [], - rel: [] - } - }, - batch: { - batchId: [], - cycle: [], - date: [], - link: { - href: [], - method: [], - rel: [] - } - }, - card: { - avsRequest: [], - avsResponse: [], - cardNumber: [], - cvvPresenceIndicator: [], - type: [] - }, - cashbackAmount: [], - createdDate: [], - currency: [], - date: [], - entryMethod: [], - interchange: { - basisPoint: [], - transactionFee: [] - }, - lastModifiedDate: [], - merchant: { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [] - }, - settled: { - achDate: [], - settledBy: [] - }, - status: [], - transactionId: [], - type: [] - }, - { - amount: [], - authorization: { - amount: [], - authorizationId: [], - avsResponseCode: [], - code: [], - link: { - href: [], - method: [], - rel: [] - } - }, - batch: { - batchId: [], - cycle: [], - date: [], - link: { - href: [], - method: [], - rel: [] - } - }, - card: { - avsRequest: [], - avsResponse: [], - cardNumber: [], - cvvPresenceIndicator: [], - type: [] - }, - cashbackAmount: [], - createdDate: [], - currency: [], - date: [], - entryMethod: [], - interchange: { - basisPoint: [], - transactionFee: [] - }, - lastModifiedDate: [], - merchant: { - doingBusinessAs: [], - link: { - href: [], - method: [], - rel: [] - }, - merchantId: [] - }, - settled: { - achDate: [], - settledBy: [] - }, - status: [], - transactionId: [], - type: [] - }, { amount: [], authorization: { @@ -14397,16 +8035,6 @@ hasMore: [], limit: [], links: [ - { - href: [], - method: [], - rel: [] - }, - { - href: [], - method: [], - rel: [] - }, { href: [], method: [],