openapi: 3.1.0 servers: - url: https://checkout-test.adyen.com/v37 info: version: '37' x-publicVersion: true title: Adyen Checkout API description: 'Adyen Checkout API provides a simple and flexible way to initiate and authorise online payments. You can use the same integration for payments made with cards (including 3D Secure), mobile wallets, and local payment methods (for example, iDEAL and Sofort). This API reference provides information on available endpoints and how to interact with them. To learn more about the API, visit [online payments documentation](https://docs.adyen.com/online-payments). ## Authentication Each request to Checkout API must be signed with an API key. For this, [get your API key](https://docs.adyen.com/development-resources/api-credentials#generate-api-key) from your Customer Area, and set this key to the `X-API-Key` header value, for example: ``` curl -H "Content-Type: application/json" \ -H "X-API-Key: YOUR_API_KEY" \ ... ``` ## Versioning Checkout API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. For example: ``` https://checkout-test.adyen.com/v37/payments ``` ## Going live To access the live endpoints, you need an API key from your live Customer Area. The live endpoint URLs contain a prefix which is unique to your company account, for example: ``` https://{PREFIX}-checkout-live.adyenpayments.com/checkout/v37/payments ``` Get your `{PREFIX}` from your live Customer Area under **Developers** > **API URLs** > **Prefix**. When preparing to do live transactions with Checkout API, follow the [go-live checklist](https://docs.adyen.com/online-payments/go-live-checklist) to make sure you''ve got all the required configuration in place. ## Release notes Have a look at the [release notes](https://docs.adyen.com/online-payments/release-notes?integration_type=api&version=37) to find out what changed in this version!' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team url: https://github.com/Adyen/adyen-openapi tags: - name: Payments - name: Donations - name: Payment links - name: Modifications - name: Recurring - name: Orders - name: Utility - name: Classic Checkout SDK paths: /applePay/sessions: post: tags: - Utility summary: Get an Apple Pay session description: 'You need to use this endpoint if you have an API-only integration with Apple Pay which uses Adyen''s Apple Pay certificate. The endpoint returns the Apple Pay session data which you need to complete the [Apple Pay session validation](https://docs.adyen.com/payment-methods/apple-pay/api-only?tab=adyen-certificate-validation_1#complete-apple-pay-session-validation).' operationId: post-applePay-sessions x-sortIndex: 2 x-methodName: getApplePaySession security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/post-applePay-sessions-basic' schema: $ref: '#/components/schemas/ApplePaySessionRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/post-applePay-sessions-basic-200' schema: $ref: '#/components/schemas/ApplePaySessionResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' /cancels: post: tags: - Modifications summary: Cancel an authorised payment description: 'Cancels the authorisation on a payment that has not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures), and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**TECHNICAL_CANCEL** webhook](https://docs.adyen.com/online-payments/cancel#cancellation-webhook). If you want to cancel a payment using the [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/cancels) endpoint instead. If you want to cancel a payment but are not sure whether it has been captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) endpoint instead. For more information, refer to [Cancel](https://docs.adyen.com/online-payments/cancel).' operationId: post-cancels x-sortIndex: 3 x-methodName: cancelAuthorisedPayment security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: cancel-with-own-reference: $ref: '#/components/examples/post-cancels-cancel-with-own-reference' schema: $ref: '#/components/schemas/StandalonePaymentCancelRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '201': content: application/json: examples: cancel-with-own-reference: $ref: '#/components/examples/post-cancels-cancel-with-own-reference-201' schema: $ref: '#/components/schemas/StandalonePaymentCancelResponse' description: Created - the request has been fulfilled and has resulted in one or more new resources being created. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /cardDetails: post: tags: - Payments summary: Get the list of brands on the card description: 'Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). If you have an API-only integration and collect card data, use this endpoint to find out if the shopper''s card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands. ' operationId: post-cardDetails x-sortIndex: 6 x-methodName: cardDetails security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/post-cardDetails-basic' supported-brands: $ref: '#/components/examples/post-cardDetails-supported-brands' schema: $ref: '#/components/schemas/CardDetailsRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/post-cardDetails-basic-200' supported-brands: $ref: '#/components/examples/post-cardDetails-supported-brands-200' schema: $ref: '#/components/schemas/CardDetailsResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' /donations: post: tags: - Donations summary: Start a transaction for donations description: 'Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request. For more information, see [Donations](https://docs.adyen.com/online-payments/donations).' operationId: post-donations x-sortIndex: 2 x-methodName: donations security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: donations: $ref: '#/components/examples/post-donations-donations' donations-with-token: $ref: '#/components/examples/post-donations-donations-with-token' schema: $ref: '#/components/schemas/DonationPaymentRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: donations: $ref: '#/components/examples/post-donations-donations-200' schema: $ref: '#/components/schemas/DonationPaymentResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /orders: post: tags: - Orders summary: Create an order description: Creates an order to be used for partial payments. Make a POST `/orders` call before making a `/payments` call when processing payments with different payment methods. operationId: post-orders x-sortIndex: 2 x-methodName: orders security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/post-orders-basic' schema: $ref: '#/components/schemas/CreateOrderRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/post-orders-basic-200' schema: $ref: '#/components/schemas/CreateOrderResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /orders/cancel: post: tags: - Orders summary: Cancel an order description: Cancels an order. Cancellation of an order results in an automatic rollback of all payments made in the order, either by canceling or refunding the payment, depending on the type of payment method. operationId: post-orders-cancel x-sortIndex: 3 x-methodName: cancelOrder security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/post-orders-cancel-basic' schema: $ref: '#/components/schemas/CancelOrderRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/post-orders-cancel-basic-200' schema: $ref: '#/components/schemas/CancelOrderResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /originKeys: post: tags: - Utility summary: Create originKey values for domains description: "This operation takes the origin domains and returns a JSON object\ \ containing the corresponding origin keys for the domains. \n> If you're\ \ still using origin key for your Web Drop-in or Components integration, we\ \ recommend [switching to client key](https://docs.adyen.com/development-resources/client-side-authentication/migrate-from-origin-key-to-client-key).\ \ This allows you to use a single key for all origins, add or remove origins\ \ without generating a new key, and detect the card type from the number entered\ \ in your payment form. " operationId: post-originKeys x-sortIndex: 1 x-methodName: originKeys security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/post-originKeys-basic' schema: $ref: '#/components/schemas/UtilityRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/post-originKeys-basic-200' schema: $ref: '#/components/schemas/UtilityResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /paymentLinks: post: tags: - Payment links summary: Create a payment link description: 'Creates a payment link to our hosted payment form where shoppers can pay. The list of payment methods presented to the shopper depends on the `currency` and `country` parameters sent in the request. For more information, refer to [Pay by Link documentation](https://docs.adyen.com/online-payments/pay-by-link#create-payment-links-through-api).' operationId: post-paymentLinks x-sortIndex: 1 x-methodName: paymentLinks security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/post-paymentLinks-basic' schema: $ref: '#/components/schemas/PaymentLinkRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '201': content: application/json: examples: basic: $ref: '#/components/examples/post-paymentLinks-basic-201' schema: $ref: '#/components/schemas/PaymentLinkResponse' description: Created - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /paymentLinks/{linkId}: get: tags: - Payment links summary: Get a payment link description: Retrieves the payment link details using the payment link `id`. operationId: get-paymentLinks-linkId x-sortIndex: 2 x-methodName: getPaymentLink security: - BasicAuth: [] - ApiKeyAuth: [] parameters: - description: Unique identifier of the payment link. name: linkId in: path required: true schema: type: string responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/get-paymentLinks-linkId-basic-200' schema: $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. patch: tags: - Payment links summary: Update the status of a payment link description: Updates the status of a payment link. Use this endpoint to [force the expiry of a payment link](https://docs.adyen.com/online-payments/pay-by-link#update-payment-link-status). operationId: patch-paymentLinks-linkId x-sortIndex: 3 x-methodName: updatePaymentLink security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic' schema: $ref: '#/components/schemas/UpdatePaymentLinkRequest' parameters: - description: Unique identifier of the payment link. name: linkId in: path required: true schema: type: string responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/patch-paymentLinks-linkId-basic-200' schema: $ref: '#/components/schemas/PaymentLinkResponse' description: OK - the request has succeeded. '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /paymentMethods: post: tags: - Payments summary: Get a list of available payment methods description: 'Queries the available payment methods for a transaction based on the transaction context (like amount, country, and currency). Besides giving back a list of the available payment methods, the response also returns which input details you need to collect from the shopper (to be submitted to `/payments`). Although we highly recommend using this endpoint to ensure you are always offering the most up-to-date list of payment methods, its usage is optional. You can, for example, also cache the `/paymentMethods` response and update it once a week.' operationId: post-paymentMethods x-sortIndex: 2 x-methodName: paymentMethods security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/post-paymentMethods-basic' filtered: $ref: '#/components/examples/post-paymentMethods-filtered' include-oneclick: $ref: '#/components/examples/post-paymentMethods-include-oneclick' schema: $ref: '#/components/schemas/PaymentMethodsRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/post-paymentMethods-basic-200' filtered: $ref: '#/components/examples/post-paymentMethods-filtered-200' include-oneclick: $ref: '#/components/examples/post-paymentMethods-include-oneclick-200' schema: $ref: '#/components/schemas/PaymentMethodsResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /paymentMethods/balance: post: tags: - Orders summary: Get the balance of a gift card description: Retrieves the balance remaining on a shopper's gift card. To check a gift card's balance, make a POST `/paymentMethods/balance` call and include the gift card's details inside a `paymentMethod` object. operationId: post-paymentMethods-balance x-sortIndex: 1 x-methodName: getBalanceOfGiftCard security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/post-paymentMethods-balance-basic' not-enough: $ref: '#/components/examples/post-paymentMethods-balance-not-enough' schema: $ref: '#/components/schemas/BalanceCheckRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/post-paymentMethods-balance-basic-200' not-enough: $ref: '#/components/examples/post-paymentMethods-balance-not-enough-200' schema: $ref: '#/components/schemas/BalanceCheckResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /paymentSession: post: tags: - Classic Checkout SDK summary: Create a payment session description: 'Provides the data object that can be used to start the Checkout SDK. To set up the payment, pass its amount, currency, and other required parameters. We use this to optimise the payment flow and perform better risk assessment of the transaction. For more information, refer to [How it works](https://docs.adyen.com/online-payments#howitworks).' deprecated: true x-deprecatedInVersion: '37' operationId: post-paymentSession x-sortIndex: 1 x-methodName: paymentSession security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: android: $ref: '#/components/examples/post-paymentSession-android' ios: $ref: '#/components/examples/post-paymentSession-ios' split: $ref: '#/components/examples/post-paymentSession-split' web: $ref: '#/components/examples/post-paymentSession-web' schema: $ref: '#/components/schemas/PaymentSetupRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: web: $ref: '#/components/examples/post-paymentSession-web-200' schema: $ref: '#/components/schemas/PaymentSetupResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /payments: post: tags: - Payments summary: Start a transaction description: "Sends payment parameters (like amount, country, and currency)\ \ together with other required input details collected from the shopper. To\ \ know more about required parameters for specific payment methods, refer\ \ to our [payment method guides](https://docs.adyen.com/payment-methods).\ \ \nThe response depends on the [payment flow](https://docs.adyen.com/payment-methods#payment-flow):\n\ * For a direct flow, the response includes a `pspReference` and a `resultCode`\ \ with the payment result, for example **Authorised** or **Refused**. \n*\ \ For a redirect or additional action, the response contains an `action` object. " operationId: post-payments x-sortIndex: 3 x-methodName: payments security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: applepay: $ref: '#/components/examples/post-payments-applepay' card-3d-secure-direct: $ref: '#/components/examples/post-payments-card-3d-secure-direct' card-3d-secure-securedfields: $ref: '#/components/examples/post-payments-card-3d-secure-securedfields' card-direct: $ref: '#/components/examples/post-payments-card-direct' card-securedfields: $ref: '#/components/examples/post-payments-card-securedfields' oneclick-direct: $ref: '#/components/examples/post-payments-oneclick-direct' oneclick-securedfields: $ref: '#/components/examples/post-payments-oneclick-securedfields' split-balanceplatform: $ref: '#/components/examples/post-payments-split-balanceplatform' split-classic: $ref: '#/components/examples/post-payments-split-classic' schema: $ref: '#/components/schemas/PaymentRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: card-3d-secure-direct: $ref: '#/components/examples/post-payments-card-3d-secure-direct-200' card-3d-secure-securedfields: $ref: '#/components/examples/post-payments-card-3d-secure-securedfields-200' card-direct: $ref: '#/components/examples/post-payments-card-direct-200' card-securedfields: $ref: '#/components/examples/post-payments-card-securedfields-200' split-balanceplatform: $ref: '#/components/examples/post-payments-split-balanceplatform-200' schema: $ref: '#/components/schemas/PaymentResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /payments/details: post: tags: - Payments summary: Submit details for a payment description: 'Submits details for a payment created using `/payments`. This step is only needed when no final state has been reached on the `/payments` request, for example when the shopper was redirected to another page to complete the payment. ' operationId: post-payments-details x-sortIndex: 4 x-methodName: paymentsDetails security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: 3d-secure: $ref: '#/components/examples/post-payments-details-3d-secure' schema: $ref: '#/components/schemas/PaymentDetailsRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: 3d-secure: $ref: '#/components/examples/post-payments-details-3d-secure-200' schema: $ref: '#/components/schemas/PaymentDetailsResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /payments/result: post: tags: - Classic Checkout SDK summary: Verify a payment result description: 'Verifies the payment result using the payload returned from the Checkout SDK. For more information, refer to [How it works](https://docs.adyen.com/online-payments#howitworks).' deprecated: true x-deprecatedInVersion: '37' operationId: post-payments-result x-sortIndex: 2 x-methodName: verifyPaymentResult security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: basic: $ref: '#/components/examples/post-payments-result-basic' schema: $ref: '#/components/schemas/PaymentVerificationRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: examples: basic: $ref: '#/components/examples/post-payments-result-basic-200' schema: $ref: '#/components/schemas/PaymentVerificationResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /payments/{paymentPspReference}/amountUpdates: post: tags: - Modifications summary: Update an authorised amount description: 'Increases or decreases the authorised payment amount and returns a unique reference for this request. You get the outcome of the request asynchronously, in an [**AUTHORISATION_ADJUSTMENT** webhook](https://docs.adyen.com/development-resources/webhooks/understand-notifications#event-codes). You can only update authorised amounts that have not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures). The amount you specify in the request is the updated amount, which is larger or smaller than the initial authorised amount. For more information, refer to [Authorisation adjustment](https://docs.adyen.com/online-payments/adjust-authorisation#use-cases).' operationId: post-payments-paymentPspReference-amountUpdates x-sortIndex: 6 x-methodName: updateAuthorisedAmount security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: amount-update: $ref: '#/components/examples/post-payments-paymentPspReference-amountUpdates-amount-update' schema: $ref: '#/components/schemas/PaymentAmountUpdateRequest' parameters: - description: The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment. name: paymentPspReference in: path required: true schema: type: string - $ref: '#/components/parameters/Idempotency-Key' responses: '201': content: application/json: examples: amount-update: $ref: '#/components/examples/post-payments-paymentPspReference-amountUpdates-amount-update-201' schema: $ref: '#/components/schemas/PaymentAmountUpdateResponse' description: Created - the request has been fulfilled and has resulted in one or more new resources being created. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /payments/{paymentPspReference}/cancels: post: tags: - Modifications summary: Cancel an authorised payment description: 'Cancels the authorisation on a payment that has not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/paymentPspReference/captures), and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**CANCELLATION** webhook](https://docs.adyen.com/online-payments/cancel#cancellation-webhook). If you want to cancel a payment but don''t have the [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cancels) endpoint instead. If you want to cancel a payment but are not sure whether it has been captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) endpoint instead. For more information, refer to [Cancel](https://docs.adyen.com/online-payments/cancel).' operationId: post-payments-paymentPspReference-cancels x-sortIndex: 2 x-methodName: cancelAuthorisedPaymentByPspReference security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: cancel-with-psp-reference: $ref: '#/components/examples/post-payments-paymentPspReference-cancels-cancel-with-psp-reference' schema: $ref: '#/components/schemas/PaymentCancelRequest' parameters: - description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to cancel. ' name: paymentPspReference in: path required: true schema: type: string - $ref: '#/components/parameters/Idempotency-Key' responses: '201': content: application/json: examples: cancel-with-psp-reference: $ref: '#/components/examples/post-payments-paymentPspReference-cancels-cancel-with-psp-reference-201' schema: $ref: '#/components/schemas/PaymentCancelResponse' description: Created - the request has been fulfilled and has resulted in one or more new resources being created. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /payments/{paymentPspReference}/captures: post: tags: - Modifications summary: Capture an authorised payment description: " Captures an authorised payment and returns a unique reference\ \ for this request. You get the outcome of the request asynchronously, in\ \ a [**CAPTURE** webhook](https://docs.adyen.com/online-payments/capture#capture-notification).\n\ \nYou can capture either the full authorised amount or a part of the authorised\ \ amount. By default, any unclaimed amount after a partial capture gets cancelled.\ \ This does not apply if you enabled multiple partial captures on your account\ \ and the payment method supports multiple partial captures. \n\n[Automatic\ \ capture](https://docs.adyen.com/online-payments/capture#automatic-capture)\ \ is the default setting for most payment methods. In these cases, you don't\ \ need to make capture requests. However, making capture requests for payments\ \ that are captured automatically does not result in double charges.\n\nFor\ \ more information, refer to [Capture](https://docs.adyen.com/online-payments/capture)." operationId: post-payments-paymentPspReference-captures x-sortIndex: 1 x-methodName: captureAuthorisedPayment security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: capture: $ref: '#/components/examples/post-payments-paymentPspReference-captures-capture' schema: $ref: '#/components/schemas/PaymentCaptureRequest' parameters: - description: The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to capture. name: paymentPspReference in: path required: true schema: type: string - $ref: '#/components/parameters/Idempotency-Key' responses: '201': content: application/json: examples: capture: $ref: '#/components/examples/post-payments-paymentPspReference-captures-capture-201' schema: $ref: '#/components/schemas/PaymentCaptureResponse' description: Created - the request has been fulfilled and has resulted in one or more new resources being created. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /payments/{paymentPspReference}/refunds: post: tags: - Modifications summary: Refund a captured payment description: "Refunds a payment that has been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures),\ \ and returns a unique reference for this request. You get the outcome of\ \ the request asynchronously, in a [**REFUND** webhook](https://docs.adyen.com/online-payments/refund#refund-webhook).\n\ \nYou can refund either the full captured amount or a part of the captured\ \ amount. You can also perform multiple partial refunds, as long as their\ \ sum doesn't exceed the captured amount.\n\n> Some payment methods do not\ \ support partial refunds. To learn if a payment method supports partial refunds,\ \ refer to the payment method page such as [cards](https://docs.adyen.com/payment-methods/cards#supported-cards),\ \ [iDEAL](https://docs.adyen.com/payment-methods/ideal), or [Klarna](https://docs.adyen.com/payment-methods/klarna).\ \ \n\nIf you want to refund a payment but are not sure whether it has been\ \ captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals)\ \ endpoint instead.\n\nFor more information, refer to [Refund](https://docs.adyen.com/online-payments/refund)." operationId: post-payments-paymentPspReference-refunds x-sortIndex: 4 x-methodName: refundCapturedPayment security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: refund: $ref: '#/components/examples/post-payments-paymentPspReference-refunds-refund' schema: $ref: '#/components/schemas/PaymentRefundRequest' parameters: - description: The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to refund. name: paymentPspReference in: path required: true schema: type: string - $ref: '#/components/parameters/Idempotency-Key' responses: '201': content: application/json: examples: refund: $ref: '#/components/examples/post-payments-paymentPspReference-refunds-refund-201' schema: $ref: '#/components/schemas/PaymentRefundResponse' description: Created - the request has been fulfilled and has resulted in one or more new resources being created. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /payments/{paymentPspReference}/reversals: post: tags: - Modifications summary: Refund or cancel a payment description: '[Refunds](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/refunds) a payment if it has already been captured, and [cancels](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/cancels) a payment if it has not yet been captured. Returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**CANCEL_OR_REFUND** webhook](https://docs.adyen.com/online-payments/reverse#cancel-or-refund-webhook). The reversed amount is always the full payment amount. > Do not use this request for payments that involve multiple partial captures. For more information, refer to [Reversal](https://docs.adyen.com/online-payments/reversal).' operationId: post-payments-paymentPspReference-reversals x-sortIndex: 5 x-methodName: refundOrCancelPayment security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: examples: reversal: $ref: '#/components/examples/post-payments-paymentPspReference-reversals-reversal' schema: $ref: '#/components/schemas/PaymentReversalRequest' parameters: - description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to reverse. ' name: paymentPspReference in: path required: true schema: type: string - $ref: '#/components/parameters/Idempotency-Key' responses: '201': content: application/json: examples: reversal: $ref: '#/components/examples/post-payments-paymentPspReference-reversals-reversal-201' schema: $ref: '#/components/schemas/PaymentReversalResponse' description: Created - the request has been fulfilled and has resulted in one or more new resources being created. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /paypal/updateOrder: post: tags: - Utility summary: Updates the order for PayPal Express Checkout description: Updates the order for PayPal Express Checkout. This can be used to update the PayPal lightbox with an updated amount and delivery methods based on the delivery address. operationId: post-paypal-updateOrder x-sortIndex: 3 x-methodName: updatesOrderForPaypalExpressCheckout security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/PaypalUpdateOrderRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaypalUpdateOrderResponse' description: OK - the request has succeeded. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '400': content: application/json: examples: generic: $ref: '#/components/examples/generic-400' schema: $ref: '#/components/schemas/ServiceError' description: Bad Request - a problem reading or understanding the request. '401': content: application/json: examples: generic: $ref: '#/components/examples/generic-401' schema: $ref: '#/components/schemas/ServiceError' description: Unauthorized - authentication required. '403': content: application/json: examples: generic: $ref: '#/components/examples/generic-403' schema: $ref: '#/components/schemas/ServiceError' description: Forbidden - insufficient permissions to process the request. '422': content: application/json: examples: generic: $ref: '#/components/examples/generic-422' schema: $ref: '#/components/schemas/ServiceError' description: Unprocessable Entity - a request validation error. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' '500': content: application/json: examples: generic: $ref: '#/components/examples/generic-500' schema: $ref: '#/components/schemas/ServiceError' description: Internal Server Error - the server could not process the request. /storedPaymentMethods: post: tags: - Recurring summary: Create a token to store payment details description: Creates a token to store the shopper's payment details. This token can be used for the shopper's future payments. operationId: post-storedPaymentMethods x-sortIndex: 1 x-methodName: storedPaymentMethods security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/StoredPaymentMethodRequest' parameters: - $ref: '#/components/parameters/Idempotency-Key' responses: '201': content: application/json: schema: $ref: '#/components/schemas/StoredPaymentMethodResource' description: Created - the request has been fulfilled and has resulted in one or more new resources being created. headers: Idempotency-Key: $ref: '#/components/headers/Idempotency-Key' components: schemas: AchDetails: additionalProperties: false properties: bankAccountNumber: description: The bank account number (without separators). type: string bankAccountType: description: The bank account type (checking, savings...). enum: - balance - checking - deposit - general - other - payment - savings type: string bankLocationId: description: The bank routing number of the account. The field value is `nil` in most cases. type: string encryptedBankAccountNumber: description: Encrypted bank account number. The bank account number (without separators). type: string encryptedBankLocationId: description: Encrypted location id. The bank routing number of the account. The field value is `nil` in most cases. type: string ownerName: description: "The name of the bank account holder.\nIf you submit a name\ \ with non-Latin characters, we automatically replace some of them with\ \ corresponding Latin characters to meet the FATF recommendations. For\ \ example:\n* \u03C712 is converted to ch12.\n* \xFCA is converted to\ \ euA.\n* Peter M\xF8ller is converted to Peter Mller, because banks don't\ \ accept '\xF8'.\nAfter replacement, the ownerName must have at least\ \ three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them\ \ must be a valid Latin character (A-Z, a-z). For example:\n* John17 -\ \ allowed.\n* J17 - allowed.\n* 171 - not allowed.\n* John-7 - allowed.\n\ > If provided details don't match the required format, the response returns\ \ the error message: 203 'Invalid bank account holder name'." type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: ach description: '**ach**' enum: - ach - ach_plaid type: string title: ACH Direct Debit type: object AdditionalData3DSecure: additionalProperties: false properties: allow3DS2: description: "Indicates if you are able to process 3D Secure 2 transactions\ \ natively on your payment page. Send this parameter when you are using\ \ `/payments` endpoint with any of our [native 3D Secure 2 solutions](https://docs.adyen.com/online-payments/3d-secure/native-3ds2).\n\ \n > This parameter only indicates readiness to support native 3D Secure\ \ 2 authentication. To specify if you _want_ to perform 3D Secure, use\ \ [Dynamic 3D Secure](/risk-management/dynamic-3d-secure) or send the\ \ `executeThreeD` parameter.\n\nPossible values:\n* **true** - Ready to\ \ support native 3D Secure 2 authentication. Setting this to true does\ \ not mean always applying 3D Secure 2. Adyen still selects the version\ \ of 3D Secure based on configuration to optimize authorisation rates\ \ and improve the shopper's experience.\n* **false** \u2013 Not ready\ \ to support native 3D Secure 2 authentication. Adyen will not offer 3D\ \ Secure 2 to your shopper regardless of your configuration.\n" type: string challengeWindowSize: description: "Dimensions of the 3DS2 challenge window to be displayed to\ \ the cardholder.\n\nPossible values:\n\n* **01** - size of 250x400 \n\ * **02** - size of 390x400\n* **03** - size of 500x600\n* **04** - size\ \ of 600x400\n* **05** - Fullscreen" enum: - '01' - '02' - '03' - '04' - '05' type: string executeThreeD: description: "Indicates if you want to perform 3D Secure authentication\ \ on a transaction.\n\n > Alternatively, you can use [Dynamic 3D Secure](/risk-management/dynamic-3d-secure)\ \ to configure rules for applying 3D Secure.\n\nPossible values:\n* **true**\ \ \u2013 Perform 3D Secure authentication.\n* **false** \u2013 Don't perform\ \ 3D Secure authentication. Note that this setting results in refusals\ \ if the issuer mandates 3D Secure because of the PSD2 directive or other,\ \ national regulations. \n" type: string mpiImplementationType: description: In case of Secure+, this field must be set to **CUPSecurePlus**. type: string scaExemption: description: "Indicates the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest)\ \ that you want to request for the transaction.\n\n Possible values:\n\ * **lowValue** \n* **secureCorporate** \n* **trustedBeneficiary** \n*\ \ **transactionRiskAnalysis** " type: string threeDSVersion: description: "Indicates your preference for the 3D Secure version. \n> If\ \ you use this parameter, you override the checks from Adyen's Authentication\ \ Engine. We recommend to use this field only if you have an extensive\ \ knowledge of 3D Secure.\n\nPossible values:\n* **1.0.2**: Apply 3D Secure\ \ version 1.0.2. \n* **2.1.0**: Apply 3D Secure version 2.1.0. \n* **2.2.0**:\ \ Apply 3D Secure version 2.2.0. If the issuer does not support version\ \ 2.2.0, we will fall back to 2.1.0.\n\nThe following rules apply:\n*\ \ If you prefer 2.1.0 or 2.2.0 but we receive a negative `transStatus`\ \ in the `ARes`, we will apply the fallback policy configured in your\ \ account. For example, if the configuration is to fall back to 3D Secure\ \ 1, we will apply version 1.0.2.\n* If you prefer 2.1.0 or 2.2.0 but\ \ the BIN is not enrolled, you will receive an error.\n\n" type: string type: object AdditionalDataAirline: additionalProperties: false properties: airline.agency_invoice_number: description: 'The reference number for the invoice, issued by the agency. * Encoding: ASCII * minLength: 1 character * maxLength: 6 characters' type: string airline.agency_plan_name: description: 'The two-letter agency plan identifier. * Encoding: ASCII * minLength: 2 characters * maxLength: 2 characters' type: string airline.airline_code: description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx) 3-digit accounting code (PAX) that identifies the carrier. * Format: IATA 3-digit accounting code (PAX) * Example: KLM = 074 * minLength: 3 characters * maxLength: 3 characters * Must not be all spaces *Must not be all zeros.' type: string airline.airline_designator_code: description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter accounting code (PAX) that identifies the carrier. * Encoding: ASCII * Example: KLM = KL * minLength: 2 characters * maxLength: 2 characters * Must not be all spaces *Must not be all zeros.' type: string airline.boarding_fee: description: 'The amount charged for boarding the plane, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Encoding: Numeric * minLength: 1 character * maxLength: 18 characters' type: string airline.computerized_reservation_system: description: 'The [CRS](https://en.wikipedia.org/wiki/Computer_reservation_system) used to make the reservation and purchase the ticket. * Encoding: ASCII * minLength: 4 characters * maxLength: 4 characters' type: string airline.customer_reference_number: description: 'The alphanumeric customer reference number. * Encoding: ASCII * maxLength: 20 characters * If you send more than 20 characters, the customer reference number is truncated * Must not be all spaces' type: string airline.document_type: description: 'A code that identifies the type of item bought. The description of the code can appear on credit card statements. * Encoding: ASCII * Example: Passenger ticket = 01 * minLength: 2 characters * maxLength: 2 characters' type: string airline.flight_date: description: 'The flight departure date. Local time `(HH:mm)` is optional. * Date format: `yyyy-MM-dd` * Date and time format: `yyyy-MM-dd HH:mm` * minLength: 10 characters * maxLength: 16 characters' type: string airline.leg.carrier_code: description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter accounting code (PAX) that identifies the carrier. This field is required if the airline data includes leg details. * Example: KLM = KL * minLength: 2 characters * maxLength: 2 characters * Must not be all spaces *Must not be all zeros.' type: string airline.leg.class_of_travel: description: "A one-letter travel class identifier.\n The following are\ \ common:\n * F: first class\n* J: business class\n* Y: economy class\n\ * W: premium economy\n\n* Encoding: ASCII\n* minLength: 1 character\n\ * maxLength: 1 character\n* Must not be all spaces\n*Must not be all zeros." type: string airline.leg.date_of_travel: description: "\t\nDate and time of travel in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)\ \ format `yyyy-MM-dd HH:mm`.\n* Encoding: ASCII\n* minLength: 16 characters\n\ * maxLength: 16 characters" type: string airline.leg.depart_airport: description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx) three-letter airport code of the departure airport. This field is required if the airline data includes leg details. * Encoding: ASCII * Example: Amsterdam = AMS * minLength: 3 characters * maxLength: 3 characters * Must not be all spaces *Must not be all zeros.' type: string airline.leg.depart_tax: description: 'The amount of [departure tax](https://en.wikipedia.org/wiki/Departure_tax) charged, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Encoding: Numeric * minLength: 1 * maxLength: 12 *Must not be all zeros.' type: string airline.leg.destination_code: description: 'The [IATA](https://www.iata.org/services/pages/codes.aspx) 3-letter airport code of the destination airport. This field is required if the airline data includes leg details. * Example: Amsterdam = AMS * Encoding: ASCII * minLength: 3 characters * maxLength: 3 characters * Must not be all spaces *Must not be all zeros.' type: string airline.leg.fare_base_code: description: 'The [fare basis code](https://en.wikipedia.org/wiki/Fare_basis_code), alphanumeric. * minLength: 1 character * maxLength: 6 characters * Must not be all spaces *Must not be all zeros.' type: string airline.leg.flight_number: description: 'The flight identifier. * minLength: 1 character * maxLength: 5 characters * Must not be all spaces *Must not be all zeros.' type: string airline.leg.stop_over_code: description: 'A one-letter code that indicates whether the passenger is entitled to make a stopover. Can be a space, O if the passenger is entitled to make a stopover, or X if they are not. * Encoding: ASCII * minLength: 1 character * maxLength: 1 character' type: string airline.passenger.date_of_birth: description: 'The passenger''s date of birth. Date format: `yyyy-MM-dd` * minLength: 10 * maxLength: 10' type: string airline.passenger.first_name: description: 'The passenger''s first name. > This field is required if the airline data includes passenger details or leg details. * Encoding: ASCII' type: string airline.passenger.last_name: description: 'The passenger''s last name. > This field is required if the airline data includes passenger details or leg details. * Encoding: ASCII' type: string airline.passenger.telephone_number: description: 'The passenger''s telephone number, including country code. This is an alphanumeric field that can include the ''+'' and ''-'' signs. * Encoding: ASCII * minLength: 3 characters * maxLength: 30 characters' type: string airline.passenger.traveller_type: description: 'The IATA passenger type code (PTC). * Encoding: ASCII * minLength: 3 characters * maxLength: 6 characters' type: string airline.passenger_name: description: "The passenger's name, initials, and title.\n* Format: last\ \ name + first name or initials + title\n* Example: *FLYER / MARY MS*\n\ * minLength: 1 character\n* maxLength: 20 characters\n* If you send more\ \ than 20 characters, the name is truncated\n* Must not be all spaces\ \ \n*Must not be all zeros." type: string airline.ticket_issue_address: description: 'The address of the organization that issued the ticket. * minLength: 0 characters * maxLength: 16 characters' type: string airline.ticket_number: description: 'The ticket''s unique identifier. * minLength: 1 character * maxLength: 15 characters * Must not be all spaces *Must not be all zeros.' type: string airline.travel_agency_code: description: 'The unique identifier from IATA or ARC for the travel agency that issues the ticket. * Encoding: ASCII * minLength: 1 character * maxLength: 8 characters * Must not be all spaces *Must not be all zeros.' type: string airline.travel_agency_name: description: 'The name of the travel agency. * Encoding: ASCII * minLength: 1 character * maxLength: 25 characters * Must not be all spaces *Must not be all zeros.' type: string required: - airline.passenger_name type: object AdditionalDataCarRental: additionalProperties: false properties: carRental.checkOutDate: description: 'The pick-up date. * Date format: `yyyyMMdd`' type: string carRental.customerServiceTollFreeNumber: description: 'The customer service phone number of the car rental company. * Format: Alphanumeric * maxLength: 17 * For US and CA numbers must be 10 characters in length * Must not start with a space * Must not contain any special characters such as + or - *Must not be all zeros.' type: string carRental.daysRented: description: 'Number of days for which the car is being rented. * Format: Numeric * maxLength: 4 * Must not be all spaces' type: string carRental.fuelCharges: description: 'Any fuel charges associated with the rental, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Format: Numeric * maxLength: 12' type: string carRental.insuranceCharges: description: 'Any insurance charges associated with the rental, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Format: Numeric * maxLength: 12 * Must not be all spaces *Must not be all zeros.' type: string carRental.locationCity: description: 'The city where the car is rented. * Format: Alphanumeric * maxLength: 18 * Must not start with a space or be all spaces *Must not be all zeros.' type: string carRental.locationCountry: description: 'The country where the car is rented, in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format. * Format: Alphanumeric * maxLength: 2' type: string carRental.locationStateProvince: description: 'The state or province where the car is rented. * Format: Alphanumeric * maxLength: 2 * Must not start with a space or be all spaces *Must not be all zeros.' type: string carRental.noShowIndicator: description: 'Indicates if the customer didn''t pick up their rental car. * Y - Customer did not pick up their car * N - Not applicable' type: string carRental.oneWayDropOffCharges: description: 'The charge for not returning a car to the original rental location, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * maxLength: 12' type: string carRental.rate: description: 'The daily rental rate, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Format: Alphanumeric * maxLength: 12' type: string carRental.rateIndicator: description: 'Specifies whether the given rate is applied daily or weekly. * D - Daily rate * W - Weekly rate' type: string carRental.rentalAgreementNumber: description: 'The rental agreement number for the car rental. * Format: Alphanumeric * maxLength: 9 * Must not start with a space or be all spaces *Must not be all zeros.' type: string carRental.rentalClassId: description: 'The classification of the rental car. * Format: Alphanumeric * maxLength: 4 * Must not start with a space or be all spaces *Must not be all zeros.' type: string carRental.renterName: description: 'The name of the person renting the car. * Format: Alphanumeric * maxLength: 26 * If you send more than 26 characters, the name is truncated * Must not start with a space or be all spaces *Must not be all zeros.' type: string carRental.returnCity: description: 'The city where the car must be returned. * Format: Alphanumeric * maxLength: 18 * Must not start with a space or be all spaces *Must not be all zeros.' type: string carRental.returnCountry: description: 'The country where the car must be returned, in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format. * Format: Alphanumeric * maxLength: 2' type: string carRental.returnDate: description: 'The last date to return the car by. * Date format: `yyyyMMdd` * maxLength: 8' type: string carRental.returnLocationId: description: 'The agency code, phone number, or address abbreviation * Format: Alphanumeric * maxLength: 10 * Must not start with a space or be all spaces *Must not be all zeros.' type: string carRental.returnStateProvince: description: 'The state or province where the car must be returned. * Format: Alphanumeric * maxLength: 3 * Must not start with a space or be all spaces *Must not be all zeros.' type: string carRental.taxExemptIndicator: description: 'Indicates if the goods or services were tax-exempt, or if tax was not paid on them. Values: * Y - Goods or services were tax exempt * N - Tax was not collected' type: string travelEntertainmentAuthData.duration: description: 'Number of days the car is rented for. This should be included in the auth message. * Format: Numeric * maxLength: 4' type: string travelEntertainmentAuthData.market: description: 'Indicates what market-specific dataset will be submitted or is being submitted. Value should be ''A'' for car rental. This should be included in the auth message. * Format: Alphanumeric * maxLength: 1' type: string type: object AdditionalDataCommon: additionalProperties: false properties: RequestedTestErrorResponseCode: description: "Triggers test scenarios that allow to replicate certain communication\ \ errors.\n\nAllowed values:\n* **NO_CONNECTION_AVAILABLE** \u2013 There\ \ wasn't a connection available to service the outgoing communication.\n\ This is a transient, retriable error since no messaging could be initiated\ \ to an issuing system (or third-party acquiring system). Therefore, the\ \ header Transient-Error: true is returned in the response. A subsequent\ \ request using the same idempotency key will be processed as if it was\ \ the first request.\n* **IOEXCEPTION_RECEIVED** \u2013 Something went\ \ wrong during transmission of the message or receiving the response.\n\ This is a classified as non-transient because the message could have been\ \ received by the issuing party and been acted upon. No transient error\ \ header is returned. If using idempotency, the (error) response is stored\ \ as the final result for the idempotency key. Subsequent messages with\ \ the same idempotency key not be processed beyond returning the stored\ \ response." type: string allowPartialAuth: description: "Set to true to authorise a part of the requested amount in\ \ case the cardholder does not have enough funds on their account. \n\ If a payment was partially authorised, the response includes resultCode:\ \ PartiallyAuthorised and the authorised amount in additionalData.authorisedAmountValue.\n\ To enable this functionality, contact our Support Team." type: string authorisationType: description: "Flags a card payment request for either pre-authorisation\ \ or final authorisation. For more information, refer to [Authorisation\ \ types](https://docs.adyen.com/online-payments/adjust-authorisation#authorisation-types).\n\ \nAllowed values:\n* **PreAuth** \u2013 flags the payment request to be\ \ handled as a pre-authorisation.\n* **FinalAuth** \u2013 flags the payment\ \ request to be handled as a final authorisation." type: string customRoutingFlag: description: 'Allows you to determine or override the acquirer account that should be used for the transaction. If you need to process a payment with an acquirer different from a default one, you can set up a corresponding configuration on the Adyen payments platform. Then you can pass a custom routing flag in a payment request''s additional data to target a specific acquirer. To enable this functionality, contact [Support](https://www.adyen.help/hc/en-us/requests/new).' type: string industryUsage: description: "In case of [asynchronous authorisation adjustment](https://docs.adyen.com/online-payments/adjust-authorisation#adjust-authorisation),\ \ this field denotes why the additional payment is made.\n\nPossible values:\n\ \n * **NoShow**: An incremental charge is carried out because of a no-show\ \ for a guaranteed reservation.\n\n * **DelayedCharge**: An incremental\ \ charge is carried out to process an additional payment after the original\ \ services have been rendered and the respective payment has been processed." enum: - NoShow - DelayedCharge type: string manualCapture: description: Set to **true** to require [manual capture](https://docs.adyen.com/online-payments/capture) for the transaction. type: string networkTxReference: description: 'Allows you to link the transaction to the original or previous one in a subscription/card-on-file chain. This field is required for token-based transactions where Adyen does not tokenize the card. Transaction identifier from card schemes, for example, Mastercard Trace ID or the Visa Transaction ID. Submit the original transaction ID of the contract in your payment request if you are not tokenizing card details with Adyen and are making a merchant-initiated transaction (MIT) for subsequent charges. Make sure you are sending `shopperInteraction` **ContAuth** and `recurringProcessingModel` **Subscription** or **UnscheduledCardOnFile** to ensure that the transaction is classified as MIT.' type: string overwriteBrand: description: Boolean indicator that can be optionally used for performing debit transactions on combo cards (for example, combo cards in Brazil). This is not mandatory but we recommend that you set this to true if you want to use the `selectedBrand` value to specify how to process the transaction. type: string subMerchantCity: description: 'This field is required if the transaction is performed by a registered payment facilitator. This field must contain the city of the actual merchant''s address. * Format: alpha-numeric. * Maximum length: 13 characters.' type: string subMerchantCountry: description: 'This field is required if the transaction is performed by a registered payment facilitator. This field must contain the three-letter country code of the actual merchant''s address. * Format: alpha-numeric. * Fixed length: 3 characters.' type: string subMerchantID: description: 'This field contains an identifier of the actual merchant when a transaction is submitted via a payment facilitator. The payment facilitator must send in this unique ID. A unique identifier per submerchant that is required if the transaction is performed by a registered payment facilitator. * Format: alpha-numeric. * Fixed length: 15 characters.' type: string subMerchantName: description: 'This field is required if the transaction is performed by a registered payment facilitator. This field must contain the name of the actual merchant. * Format: alpha-numeric. * Maximum length: 22 characters.' type: string subMerchantPostalCode: description: 'This field is required if the transaction is performed by a registered payment facilitator. This field must contain the postal code of the actual merchant''s address. * Format: alpha-numeric. * Maximum length: 10 characters.' type: string subMerchantState: description: 'This field is required if the transaction is performed by a registered payment facilitator, and if applicable to the country. This field must contain the state code of the actual merchant''s address. * Format: alpha-numeric. * Maximum length: 3 characters.' type: string subMerchantStreet: description: 'This field is required if the transaction is performed by a registered payment facilitator. This field must contain the street of the actual merchant''s address. * Format: alpha-numeric. * Maximum length: 60 characters.' type: string subMerchantTaxId: description: 'This field is required if the transaction is performed by a registered payment facilitator. This field must contain the tax ID of the actual merchant. * Format: alpha-numeric. * Fixed length: 11 or 14 characters.' type: string type: object AdditionalDataLevel23: additionalProperties: false properties: enhancedSchemeData.customerReference: description: 'The customer code. * Encoding: ASCII * Max length: 25 characters * Must not start with a space or be all spaces * Must not be all zeros.' type: string enhancedSchemeData.destinationCountryCode: description: 'The three-letter [ISO 3166-1 alpha-3 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) for the destination address. * Encoding: ASCII * Fixed length: 3 characters' type: string enhancedSchemeData.destinationPostalCode: description: 'The postal code of the destination address. * Encoding: ASCII * Max length: 10 characters * Must not start with a space' type: string enhancedSchemeData.destinationStateProvinceCode: description: 'Destination state or province code. * Encoding: ASCII * Max length: 3 characters * Must not start with a space' type: string enhancedSchemeData.dutyAmount: description: 'The duty amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * For example, 2000 means USD 20.00. * Encoding: Numeric * Max length: 12 characters' type: string enhancedSchemeData.freightAmount: description: 'The shipping amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * For example, 2000 means USD 20.00. * Encoding: Numeric *Max length: 12 characters' type: string enhancedSchemeData.itemDetailLine[itemNr].commodityCode: description: 'The [UNSPC commodity code](https://www.unspsc.org/) of the item. * Encoding: ASCII * Max length: 12 characters * Must not start with a space or be all spaces * Must not be all zeros.' type: string enhancedSchemeData.itemDetailLine[itemNr].description: description: 'A description of the item. * Encoding: ASCII * Max length: 26 characters * Must not start with a space or be all spaces * Must not be all zeros.' type: string enhancedSchemeData.itemDetailLine[itemNr].discountAmount: description: 'The discount amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * For example, 2000 means USD 20.00. * Encoding: Numeric * Max length: 12 characters' type: string enhancedSchemeData.itemDetailLine[itemNr].productCode: description: 'The product code. * Encoding: ASCII. * Max length: 12 characters * Must not start with a space or be all spaces * Must not be all zeros.' type: string enhancedSchemeData.itemDetailLine[itemNr].quantity: description: 'The number of items. Must be an integer greater than zero. * Encoding: Numeric * Max length: 12 characters * Must not start with a space or be all spaces ' type: string enhancedSchemeData.itemDetailLine[itemNr].totalAmount: description: 'The total amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * For example, 2000 means USD 20.00. * Max length: 12 characters * Must not start with a space or be all spaces * Must not be all zeros.' type: string enhancedSchemeData.itemDetailLine[itemNr].unitOfMeasure: description: 'The unit of measurement for an item. * Encoding: ASCII Max length: 3 characters * Must not start with a space or be all spaces * Must not be all zeros.' type: string enhancedSchemeData.itemDetailLine[itemNr].unitPrice: description: 'The unit price in [minor units](https://docs.adyen.com/development-resources/currency-codes). * For example, 2000 means USD 20.00. * Encoding: Numeric * Max length: 12 characters * Must not be all zeros.' type: string enhancedSchemeData.orderDate: description: 'The order date. * Format: `ddMMyy` * Encoding: ASCII * Max length: 6 characters' type: string enhancedSchemeData.shipFromPostalCode: description: 'The postal code of the address the item is shipped from. * Encoding: ASCII * Max length: 10 characters * Must not start with a space or be all spaces * Must not be all zeros.' type: string enhancedSchemeData.totalTaxAmount: description: 'The total tax amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * For example, 2000 means USD 20.00. *Encoding: Numeric *Max length: 12 characters * Must not be all zeros.' type: string type: object AdditionalDataLodging: additionalProperties: false properties: lodging.checkInDate: description: 'The arrival date. * Date format: **yyyyMmDd**. For example, for 2023 April 22, **20230422**.' type: string lodging.checkOutDate: description: 'The departure date. * Date format: **yyyyMmDd**. For example, for 2023 April 22, **20230422**.' type: string lodging.customerServiceTollFreeNumber: description: 'The toll-free phone number for the lodging. * Format: numeric * Max length: 17 characters. * For US and CA numbers must be 10 characters in length * Must not start with a space * Must not contain any special characters such as + or - *Must not be all zeros.' type: string lodging.fireSafetyActIndicator: description: 'Identifies that the facility complies with the Hotel and Motel Fire Safety Act of 1990. Must be ''Y'' or ''N''. * Format: alphabetic * Max length: 1 character' type: string lodging.folioCashAdvances: description: 'The folio cash advances, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Format: numeric * Max length: 12 characters' type: string lodging.folioNumber: description: "The card acceptor\u2019s internal invoice or billing ID reference\ \ number.\n* Max length: 25 characters.\n* Must not start with a space\n\ *Must not be all zeros." type: string lodging.foodBeverageCharges: description: 'Any charges for food and beverages associated with the booking, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Format: numeric * Max length: 12 characters' type: string lodging.noShowIndicator: description: "Indicates if the customer didn't check in for their booking.\n\ \ Possible values: \n* **Y**: the customer didn't check in \n* **N**:\ \ the customer checked in" type: string lodging.prepaidExpenses: description: 'The prepaid expenses for the booking. * Format: numeric * Max length: 12 characters' type: string lodging.propertyPhoneNumber: description: 'The lodging property location''s phone number. * Format: numeric. * Min length: 10 characters * Max length: 17 characters * For US and CA numbers must be 10 characters in length * Must not start with a space * Must not contain any special characters such as + or - *Must not be all zeros.' type: string lodging.room1.numberOfNights: description: 'The total number of nights the room is booked for. * Format: numeric * Must be a number between 0 and 99 * Max length: 4 characters' type: string lodging.room1.rate: description: 'The rate for the room, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Format: numeric * Max length: 12 characters * Must not be a negative number' type: string lodging.totalRoomTax: description: 'The total room tax amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Format: numeric * Max length: 12 characters * Must not be a negative number' type: string lodging.totalTax: description: 'The total tax amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes). * Format: numeric * Max length: 12 characters * Must not be a negative number' type: string travelEntertainmentAuthData.duration: description: 'The number of nights. This should be included in the auth message. * Format: numeric * Max length: 4 characters' type: string travelEntertainmentAuthData.market: description: 'Indicates what market-specific dataset will be submitted. Must be ''H'' for Hotel. This should be included in the auth message. * Format: alphanumeric * Max length: 1 character' type: string type: object AdditionalDataOpenInvoice: additionalProperties: false properties: openinvoicedata.merchantData: description: 'Holds different merchant data points like product, purchase, customer, and so on. It takes data in a Base64 encoded string. The `merchantData` parameter needs to be added to the `openinvoicedata` signature at the end. Since the field is optional, if it''s not included it does not impact computing the merchant signature. Applies only to Klarna. You can contact Klarna for the format and structure of the string.' type: string openinvoicedata.numberOfLines: description: 'The number of invoice lines included in `openinvoicedata`. There needs to be at least one line, so `numberOfLines` needs to be at least 1.' type: string openinvoicedata.recipientFirstName: description: First name of the recipient. If the delivery address and the billing address are different, specify the `recipientFirstName` and `recipientLastName` to share the delivery address with Klarna. Otherwise, only the billing address is shared with Klarna. type: string openinvoicedata.recipientLastName: description: Last name of the recipient. If the delivery address and the billing address are different, specify the `recipientFirstName` and `recipientLastName` to share the delivery address with Klarna. Otherwise, only the billing address is shared with Klarna. type: string openinvoicedataLine[itemNr].currencyCode: description: The three-character ISO currency code. type: string openinvoicedataLine[itemNr].description: description: A text description of the product the invoice line refers to. type: string openinvoicedataLine[itemNr].itemAmount: description: 'The price for one item in the invoice line, represented in minor units. The due amount for the item, VAT excluded.' type: string openinvoicedataLine[itemNr].itemId: description: A unique id for this item. Required for RatePay if the description of each item is not unique. type: string openinvoicedataLine[itemNr].itemVatAmount: description: The VAT due for one item in the invoice line, represented in minor units. type: string openinvoicedataLine[itemNr].itemVatPercentage: description: 'The VAT percentage for one item in the invoice line, represented in minor units. For example, 19% VAT is specified as 1900.' type: string openinvoicedataLine[itemNr].numberOfItems: description: The number of units purchased of a specific product. type: string openinvoicedataLine[itemNr].returnShippingCompany: description: Name of the shipping company handling the the return shipment. type: string openinvoicedataLine[itemNr].returnTrackingNumber: description: The tracking number for the return of the shipment. type: string openinvoicedataLine[itemNr].returnTrackingUri: description: URI where the customer can track the return of their shipment. type: string openinvoicedataLine[itemNr].shippingCompany: description: Name of the shipping company handling the delivery. type: string openinvoicedataLine[itemNr].shippingMethod: description: Shipping method. type: string openinvoicedataLine[itemNr].trackingNumber: description: The tracking number for the shipment. type: string openinvoicedataLine[itemNr].trackingUri: description: URI where the customer can track their shipment. type: string type: object AdditionalDataOpi: additionalProperties: false properties: opi.includeTransToken: description: 'Optional boolean indicator. Set to **true** if you want an ecommerce transaction to return an `opi.transToken` as additional data in the response. You can store this Oracle Payment Interface token in your Oracle Opera database. For more information and required settings, see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce).' type: string type: object AdditionalDataRatepay: additionalProperties: false properties: ratepay.installmentAmount: description: Amount the customer has to pay each month. type: string ratepay.interestRate: description: Interest rate of this installment. type: string ratepay.lastInstallmentAmount: description: Amount of the last installment. type: string ratepay.paymentFirstday: description: Calendar day of the first payment. type: string ratepaydata.deliveryDate: description: Date the merchant delivered the goods to the customer. type: string ratepaydata.dueDate: description: Date by which the customer must settle the payment. type: string ratepaydata.invoiceDate: description: Invoice date, defined by the merchant. If not included, the invoice date is set to the delivery date. type: string ratepaydata.invoiceId: description: Identification name or number for the invoice, defined by the merchant. type: string type: object AdditionalDataRetry: additionalProperties: false properties: retry.chainAttemptNumber: description: 'The number of times the transaction (not order) has been retried between different payment service providers. For instance, the `chainAttemptNumber` set to 2 means that this transaction has been recently tried on another provider before being sent to Adyen. > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` to facilitate linking payment attempts together.' type: string retry.orderAttemptNumber: description: 'The index of the attempt to bill a particular order, which is identified by the `merchantOrderReference` field. For example, if a recurring transaction fails and is retried one day later, then the order number for these attempts would be 1 and 2, respectively. > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` to facilitate linking payment attempts together.' type: string retry.skipRetry: description: 'The Boolean value indicating whether Adyen should skip or retry this transaction, if possible. > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` to facilitate linking payment attempts together.' type: string type: object AdditionalDataRisk: additionalProperties: false properties: riskdata.[customFieldName]: description: The data for your custom risk field. For more information, refer to [Create custom risk fields](https://docs.adyen.com/risk-management/configure-custom-risk-rules#step-1-create-custom-risk-fields). type: string riskdata.basket.item[itemNr].amountPerItem: description: The price of item in the basket, represented in [minor units](https://docs.adyen.com/development-resources/currency-codes). type: string riskdata.basket.item[itemNr].brand: description: Brand of the item. type: string riskdata.basket.item[itemNr].category: description: Category of the item. type: string riskdata.basket.item[itemNr].color: description: Color of the item. type: string riskdata.basket.item[itemNr].currency: description: The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217). type: string riskdata.basket.item[itemNr].itemID: description: ID of the item. type: string riskdata.basket.item[itemNr].manufacturer: description: Manufacturer of the item. type: string riskdata.basket.item[itemNr].productTitle: description: A text description of the product the invoice line refers to. type: string riskdata.basket.item[itemNr].quantity: description: Quantity of the item purchased. type: string riskdata.basket.item[itemNr].receiverEmail: description: Email associated with the given product in the basket (usually in electronic gift cards). type: string riskdata.basket.item[itemNr].size: description: Size of the item. type: string riskdata.basket.item[itemNr].sku: description: '[Stock keeping unit](https://en.wikipedia.org/wiki/Stock_keeping_unit).' type: string riskdata.basket.item[itemNr].upc: description: '[Universal Product Code](https://en.wikipedia.org/wiki/Universal_Product_Code).' type: string riskdata.promotions.promotion[itemNr].promotionCode: description: Code of the promotion. type: string riskdata.promotions.promotion[itemNr].promotionDiscountAmount: description: The discount amount of the promotion, represented in [minor units](https://docs.adyen.com/development-resources/currency-codes). type: string riskdata.promotions.promotion[itemNr].promotionDiscountCurrency: description: The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217). type: string riskdata.promotions.promotion[itemNr].promotionDiscountPercentage: description: 'Promotion''s percentage discount. It is represented in percentage value and there is no need to include the ''%'' sign. e.g. for a promotion discount of 30%, the value of the field should be 30.' type: string riskdata.promotions.promotion[itemNr].promotionName: description: Name of the promotion. type: string riskdata.riskProfileReference: description: Reference number of the risk profile that you want to apply to the payment. If not provided or left blank, the merchant-level account's default risk profile will be applied to the payment. For more information, see [dynamically assign a risk profile to a payment](https://docs.adyen.com/risk-management/create-and-use-risk-profiles#dynamically-assign-a-risk-profile-to-a-payment). type: string riskdata.skipRisk: description: If this parameter is provided with the value **true**, risk checks for the payment request are skipped and the transaction will not get a risk score. type: string type: object AdditionalDataRiskStandalone: additionalProperties: false properties: PayPal.CountryCode: description: Shopper's country of residence in the form of ISO standard 3166 2-character country codes. type: string PayPal.EmailId: description: Shopper's email. type: string PayPal.FirstName: description: Shopper's first name. type: string PayPal.LastName: description: Shopper's last name. type: string PayPal.PayerId: description: 'Unique PayPal Customer Account identification number. Character length and limitations: 13 single-byte alphanumeric characters.' type: string PayPal.Phone: description: Shopper's phone number. type: string PayPal.ProtectionEligibility: description: "Allowed values:\n* **Eligible** \u2014 Merchant is protected\ \ by PayPal's Seller Protection Policy for Unauthorized Payments and Item\ \ Not Received.\n\n* **PartiallyEligible** \u2014 Merchant is protected\ \ by PayPal's Seller Protection Policy for Item Not Received.\n\n* **Ineligible**\ \ \u2014 Merchant is not protected under the Seller Protection Policy." type: string PayPal.TransactionId: description: Unique transaction ID of the payment. type: string avsResultRaw: description: 'Raw AVS result received from the acquirer, where available. Example: D' type: string bin: description: The Bank Identification Number of a credit card, which is the first six digits of a card number. Required for [tokenized card request](https://docs.adyen.com/risk-management/standalone-risk#tokenised-pan-request). type: string cvcResultRaw: description: 'Raw CVC result received from the acquirer, where available. Example: 1' type: string riskToken: description: Unique identifier or token for the shopper's card details. type: string threeDAuthenticated: description: 'A Boolean value indicating whether 3DS authentication was completed on this payment. Example: true' type: string threeDOffered: description: 'A Boolean value indicating whether 3DS was offered for this payment. Example: true' type: string tokenDataType: description: 'Required for PayPal payments only. The only supported value is: **paypal**.' type: string type: object AdditionalDataSubMerchant: additionalProperties: false properties: subMerchant.numberOfSubSellers: description: Required for transactions performed by registered payment facilitators. Indicates the number of sub-merchants contained in the request. For example, **3**. type: string subMerchant.subSeller[subSellerNr].city: description: 'Required for transactions performed by registered payment facilitators. The city of the sub-merchant''s address. * Format: Alphanumeric * Maximum length: 13 characters' type: string subMerchant.subSeller[subSellerNr].country: description: "Required for transactions performed by registered payment\ \ facilitators. The three-letter country code of the sub-merchant's address.\ \ For example, **BRA** for Brazil. \n* Format: [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3)\n\ * Fixed length: 3 characters" type: string subMerchant.subSeller[subSellerNr].id: description: "Required for transactions performed by registered payment\ \ facilitators. A unique identifier that you create for the sub-merchant,\ \ used by schemes to identify the sub-merchant. \n* Format: Alphanumeric\n\ * Maximum length: 15 characters" type: string subMerchant.subSeller[subSellerNr].mcc: description: "Required for transactions performed by registered payment\ \ facilitators. The sub-merchant's 4-digit Merchant Category Code (MCC).\ \ \n* Format: Numeric\n* Fixed length: 4 digits" type: string subMerchant.subSeller[subSellerNr].name: description: 'Required for transactions performed by registered payment facilitators. The name of the sub-merchant. Based on scheme specifications, this value will overwrite the shopper statement that will appear in the card statement. * Format: Alphanumeric * Maximum length: 22 characters' type: string subMerchant.subSeller[subSellerNr].postalCode: description: 'Required for transactions performed by registered payment facilitators. The postal code of the sub-merchant''s address, without dashes. * Format: Numeric * Fixed length: 8 digits' type: string subMerchant.subSeller[subSellerNr].state: description: 'Required for transactions performed by registered payment facilitators. The state code of the sub-merchant''s address, if applicable to the country. * Format: Alphanumeric * Maximum length: 2 characters' type: string subMerchant.subSeller[subSellerNr].street: description: 'Required for transactions performed by registered payment facilitators. The street name and house number of the sub-merchant''s address. * Format: Alphanumeric * Maximum length: 60 characters' type: string subMerchant.subSeller[subSellerNr].taxId: description: 'Required for transactions performed by registered payment facilitators. The tax ID of the sub-merchant. * Format: Numeric * Fixed length: 11 digits for the CPF or 14 digits for the CNPJ' type: string type: object AdditionalDataTemporaryServices: additionalProperties: false properties: enhancedSchemeData.customerReference: description: 'The customer code, if supplied by a customer. * Encoding: ASCII * maxLength: 25' type: string enhancedSchemeData.employeeName: description: "The name or ID of the person working in a temporary capacity.\n\ * maxLength: 40. \n* Must not be all spaces. \n*Must not be all zeros." type: string enhancedSchemeData.jobDescription: description: "The job description of the person working in a temporary capacity.\n\ * maxLength: 40 \n* Must not be all spaces. \n*Must not be all zeros." type: string enhancedSchemeData.regularHoursRate: description: 'The amount paid for regular hours worked, [minor units](https://docs.adyen.com/development-resources/currency-codes). * maxLength: 7 * Must not be empty * Can be all zeros' type: string enhancedSchemeData.regularHoursWorked: description: 'The hours worked. * maxLength: 7 * Must not be empty * Can be all zeros' type: string enhancedSchemeData.requestName: description: 'The name of the person requesting temporary services. * maxLength: 40 * Must not be all zeros * Must not be all spaces' type: string enhancedSchemeData.tempStartDate: description: 'The billing period start date. * Format: ddMMyy * maxLength: 6' type: string enhancedSchemeData.tempWeekEnding: description: 'The billing period end date. * Format: ddMMyy * maxLength: 6' type: string enhancedSchemeData.totalTaxAmount: description: 'The total tax amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes). For example, 2000 means USD 20.00 * maxLength: 12' type: string type: object AdditionalDataWallets: additionalProperties: false properties: androidpay.token: description: The Android Pay token retrieved from the SDK. type: string masterpass.transactionId: description: The Mastercard Masterpass Transaction ID retrieved from the SDK. type: string payment.token: description: The Apple Pay token retrieved from the SDK. type: string paywithgoogle.token: description: The Google Pay token retrieved from the SDK. type: string samsungpay.token: description: The Samsung Pay token retrieved from the SDK. type: string visacheckout.callId: description: The Visa Checkout Call ID retrieved from the SDK. type: string type: object Address: additionalProperties: false properties: city: description: 'The name of the city. Maximum length: 3000 characters.' maxLength: 3000 type: string country: description: 'The two-character ISO-3166-1 alpha-2 country code. For example, **US**. > If you don''t know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.' type: string houseNumberOrName: description: 'The number or name of the house. Maximum length: 3000 characters.' maxLength: 3000 type: string postalCode: description: A maximum of five digits for an address in the US, or a maximum of ten characters for an address in all other countries. type: string stateOrProvince: description: 'The two-character ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada. > Required for the US and Canada.' type: string street: description: 'The name of the street. Maximum length: 3000 characters. > The house number should not be included in this field; it should be separately provided via `houseNumberOrName`.' maxLength: 3000 type: string required: - street - houseNumberOrName - city - postalCode - country type: object AfterpayDetails: additionalProperties: false properties: billingAddress: description: The address where to send the invoice. type: string deliveryAddress: description: The address where the goods should be delivered. type: string personalDetails: description: Shopper name, date of birth, phone number, and email address. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: afterpay_default description: '**afterpay_default**' enum: - afterpay_default - afterpaytouch - afterpay_b2b - clearpay type: string required: - type title: Afterpay type: object AmazonPayDetails: additionalProperties: false properties: amazonPayToken: description: This is the `amazonPayToken` that you obtained from the [Get Checkout Session](https://amazon-pay-acquirer-guide.s3-eu-west-1.amazonaws.com/v1/amazon-pay-api-v2/checkout-session.html#get-checkout-session) response. This token is used for API only integration specifically. type: string checkoutSessionId: description: The `checkoutSessionId` is used to identify the checkout session at the Amazon Pay side. This field is required only for drop-in and components integration, where it replaces the amazonPayToken. type: string type: default: amazonpay description: '**amazonpay**' enum: - amazonpay type: string title: Amazon Pay type: object Amount: additionalProperties: false properties: currency: description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). maxLength: 3 minLength: 3 type: string value: description: The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). format: int64 type: integer required: - value - currency type: object AncvDetails: additionalProperties: false properties: beneficiaryId: description: ANCV account identification (email or account number) type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: description: '**ancv**' enum: - ancv type: string title: ANCV type: object AndroidPayDetails: additionalProperties: false properties: type: default: androidpay description: '**androidpay**' enum: - androidpay type: string title: Android Pay type: object ApplePayDetails: additionalProperties: false properties: applePayToken: description: The stringified and base64 encoded `paymentData` you retrieved from the Apple framework. maxLength: 10000 type: string fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: applepay description: '**applepay**' enum: - applepay type: string required: - applePayToken title: Apple Pay type: object ApplePayDonations: additionalProperties: false properties: applePayToken: description: The stringified and base64 encoded `paymentData` you retrieved from the Apple framework. maxLength: 10000 type: string fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: applepay description: '**applepay**' enum: - applepay type: string required: - applePayToken title: Apple Pay type: object ApplePaySessionRequest: additionalProperties: false properties: displayName: description: 'This is the name that your shoppers will see in the Apple Pay interface. The value returned as `configuration.merchantName` field from the [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response.' type: string domainName: description: 'The domain name you provided when you added Apple Pay in your Customer Area. This must match the `window.location.hostname` of the web shop.' type: string merchantIdentifier: description: 'Your merchant identifier registered with Apple Pay. Use the value of the `configuration.merchantId` field from the [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response.' type: string required: - domainName - merchantIdentifier - displayName type: object ApplePaySessionResponse: additionalProperties: false properties: data: description: Base64 encoded data you need to [complete the Apple Pay merchant validation](https://docs.adyen.com/payment-methods/apple-pay/api-only?tab=adyen-certificate-validation_1#complete-apple-pay-session-validation). type: string required: - data type: object ApplicationInfo: additionalProperties: false properties: adyenLibrary: description: Adyen-developed software, such as libraries and plugins, used to interact with the Adyen API. For example, Magento plugin, Java API library, etc. $ref: '#/components/schemas/CommonField' adyenPaymentSource: description: Adyen-developed software to get payment details. For example, Checkout SDK, Secured Fields SDK, etc. $ref: '#/components/schemas/CommonField' externalPlatform: description: Third-party developed platform used to initiate payment requests. For example, Magento, Zuora, etc. $ref: '#/components/schemas/ExternalPlatform' merchantApplication: description: Merchant developed software, such as cashier application, used to interact with the Adyen API. $ref: '#/components/schemas/CommonField' merchantDevice: description: Merchant device information. $ref: '#/components/schemas/MerchantDevice' shopperInteractionDevice: description: Shopper interaction device, such as terminal, mobile device or web browser, to initiate payment requests. $ref: '#/components/schemas/ShopperInteractionDevice' type: object Avs: additionalProperties: false properties: addressEditable: description: Indicates whether the shopper is allowed to modify the billing address for the current payment request. type: boolean enabled: description: "Specifies whether the shopper should enter their billing address\ \ during checkout.\n\nAllowed values:\n* yes \u2014 Perform AVS checks\ \ for every card payment.\n* automatic \u2014 Perform AVS checks only\ \ when required to optimize the conversion rate.\n* no \u2014 Do not perform\ \ AVS checks." enum: - 'yes' - 'no' - automatic type: string type: object BacsDirectDebitDetails: additionalProperties: false properties: recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: directdebit_GB description: '**directdebit_GB**' enum: - directdebit_GB type: string title: BACS Direct Debit type: object BalanceCheckRequest: additionalProperties: false properties: additionalAmount: description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) request to use a non-zero value, assign this value to `additionalAmount` (while the amount must be still set to 0 to trigger BIN or card verification). Required to be in the same currency as the `amount`. ' $ref: '#/components/schemas/Amount' additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/AdditionalData3DSecure' - $ref: '#/components/schemas/AdditionalDataAirline' - $ref: '#/components/schemas/AdditionalDataCarRental' - $ref: '#/components/schemas/AdditionalDataCommon' - $ref: '#/components/schemas/AdditionalDataLevel23' - $ref: '#/components/schemas/AdditionalDataLodging' - $ref: '#/components/schemas/AdditionalDataOpenInvoice' - $ref: '#/components/schemas/AdditionalDataOpi' - $ref: '#/components/schemas/AdditionalDataRatepay' - $ref: '#/components/schemas/AdditionalDataRetry' - $ref: '#/components/schemas/AdditionalDataRisk' - $ref: '#/components/schemas/AdditionalDataRiskStandalone' - $ref: '#/components/schemas/AdditionalDataSubMerchant' - $ref: '#/components/schemas/AdditionalDataTemporaryServices' - $ref: '#/components/schemas/AdditionalDataWallets' description: 'This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.' type: object amount: description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero). $ref: '#/components/schemas/Amount' billingAddress: x-addedInVersion: '4' description: 'The address where to send the invoice. > The `billingAddress` object is required in the following scenarios. Include all of the fields within this object. >* For 3D Secure 2 transactions in all browser-based and mobile implementations. >* For cross-border payouts to and from Canada.' $ref: '#/components/schemas/Address' browserInfo: description: 'The shopper''s browser information. > For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.' $ref: '#/components/schemas/BrowserInfo' captureDelayHours: x-addedInVersion: '2' description: The delay between the authorisation and scheduled auto-capture, specified in hours. format: int32 type: integer dateOfBirth: x-addedInVersion: '7' description: 'The shopper''s date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' format: date type: string dccQuote: description: The forex quote as returned in the response of the forex service. $ref: '#/components/schemas/ForexQuote' deliveryAddress: description: The address where the purchased goods should be delivered. $ref: '#/components/schemas/Address' deliveryDate: x-addedInVersion: '8' description: 'The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00' format: date-time type: string deviceFingerprint: x-addedInVersion: '2' description: A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). maxLength: 5000 type: string fraudOffset: description: An integer value that is added to the normal fraud score. The value can be either positive or negative. format: int32 type: integer installments: x-addedInVersion: '4' description: Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). $ref: '#/components/schemas/Installments' mcc: x-addedInVersion: '12' description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. type: string merchantAccount: description: The merchant account identifier, with which you want to process the transaction. type: string merchantOrderReference: x-addedInVersion: '9' description: 'This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' type: string metadata: x-addedInVersion: '17' additionalProperties: type: string description: 'Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the "177" error occurs: "Metadata size exceeds limit". * Maximum 20 characters per key. * Maximum 80 characters per value. ' type: object orderReference: description: When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead. type: string paymentMethod: additionalProperties: type: string description: The collection that contains the type of the payment method and its specific information. type: object recurring: description: The recurring settings for the payment. Use this property when you want to enable [recurring payments](https://docs.adyen.com/classic-integration/recurring-payments). $ref: '#/components/schemas/Recurring' recurringProcessingModel: x-addedInVersion: '30' description: "Defines a recurring payment type. Required when creating a\ \ token to store payment details or using stored payment details.\nAllowed\ \ values:\n* `Subscription` \u2013 A transaction for a fixed or variable\ \ amount, which follows a fixed schedule.\n* `CardOnFile` \u2013 With\ \ a card-on-file (CoF) transaction, card details are stored to enable\ \ one-click or omnichannel journeys, or simply to streamline the checkout\ \ process. Any subscription not following a fixed schedule is also considered\ \ a card-on-file transaction.\n* `UnscheduledCardOnFile` \u2013 An unscheduled\ \ card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed\ \ schedule and/or have variable amounts. For example, automatic top-ups\ \ when a cardholder's balance drops below a certain amount.\n" enum: - CardOnFile - Subscription - UnscheduledCardOnFile type: string reference: description: 'The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens ("-"). Maximum length: 80 characters.' type: string selectedBrand: description: 'Some payment methods require defining a value for this field to specify how to process the transaction. For the Bancontact payment method, it can be set to: * `maestro` (default), to be processed like a Maestro card, or * `bcmc`, to be processed like a Bancontact card.' type: string selectedRecurringDetailReference: description: The `recurringDetailReference` you want to use for this payment. The value `LATEST` can be used to select the most recently stored recurring detail. type: string sessionId: description: A session ID used to identify a payment session. type: string shopperEmail: description: 'The shopper''s email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.' type: string shopperIP: description: 'The shopper''s IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).' type: string shopperInteraction: description: 'Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.' enum: - Ecommerce - ContAuth - Moto - POS type: string shopperLocale: x-addedInVersion: '7' description: The combination of a language code and a country code to specify the language to be used in the payment. type: string shopperName: x-addedInVersion: '7' description: The shopper's full name. $ref: '#/components/schemas/Name' shopperReference: description: "Required for recurring payments. \nYour reference to uniquely\ \ identify this shopper, for example user ID or account ID. Minimum length:\ \ 3 characters.\n> Your reference must not include personally identifiable\ \ information (PII), for example name or email address." type: string shopperStatement: description: "The text to be shown on the shopper's bank statement.\n We\ \ recommend sending a maximum of 22 characters, otherwise banks might\ \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' description: The shopper's social security number. type: string splits: x-addedInVersion: '37' description: An array of objects specifying how the payment should be split when using either Adyen for Platforms for [marketplaces](https://docs.adyen.com/marketplaces/split-payments) or [platforms]((https://docs.adyen.com/platforms/split-payments), or standalone [Issuing](https://docs.adyen.com/issuing/add-manage-funds#split). items: $ref: '#/components/schemas/Split' type: array store: x-addedInVersion: '23' description: Required for Adyen for Platforms integrations if you are a platform model. This is your [reference](https://docs.adyen.com/api-explorer/Management/3/post/merchants/(merchantId)/stores#request-reference) (on [balance platform](https://docs.adyen.com/platforms)) or the [storeReference](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccountHolder#request-accountHolderDetails-storeDetails-storeReference) (in the [classic integration](https://docs.adyen.com/classic-platforms/processing-payments/route-payment-to-store/#route-a-payment-to-a-store)) for the ecommerce or point-of-sale store that is processing the payment. maxLength: 16 minLength: 1 type: string telephoneNumber: x-addedInVersion: '7' description: The shopper's telephone number. type: string totalsGroup: x-addedInVersion: '23' description: The reference value to aggregate sales totals in reporting. When not specified, the store field is used (if available). maxLength: 16 minLength: 1 type: string trustedShopper: x-addedInVersion: '37' description: Set to true if the payment should be routed to a trusted MID. type: boolean required: - merchantAccount - amount - paymentMethod type: object BalanceCheckResponse: additionalProperties: false properties: additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - $ref: '#/components/schemas/ResponseAdditionalDataDomesticError' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' - $ref: '#/components/schemas/ResponseAdditionalDataSepa' description: 'Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Developers** > **Additional data**.' type: object balance: description: The balance for the payment method. $ref: '#/components/schemas/Amount' fraudResult: description: The fraud result properties of the payment. $ref: '#/components/schemas/FraudResult' pspReference: description: Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. type: string refusalReason: description: 'If the payment''s authorisation is refused or an error occurs during authorisation, this field holds Adyen''s mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' type: string resultCode: description: "The result of the cancellation request.\n\nPossible values:\n\ \n* **Success** \u2013 Indicates that the balance check was successful.\n\ * **NotEnoughBalance** \u2013 Commonly indicates that the card did not\ \ have enough balance to pay the amount in the request, or that the currency\ \ of the balance on the card did not match the currency of the requested\ \ amount.\n* **Failed** \u2013 Indicates that the balance check failed." enum: - Success - NotEnoughBalance - Failed type: string required: - balance - resultCode type: object BankAccount: additionalProperties: false properties: bankAccountNumber: description: The bank account number (without separators). type: string bankCity: x-addedInVersion: '18' description: The bank city. type: string bankLocationId: description: The location id of the bank. The field value is `nil` in most cases. type: string bankName: description: The name of the bank. type: string bic: description: The [Business Identifier Code](https://en.wikipedia.org/wiki/ISO_9362) (BIC) is the SWIFT address assigned to a bank. The field value is `nil` in most cases. type: string countryCode: description: 'Country code where the bank is located. A valid value is an ISO two-character country code (e.g. ''NL'').' type: string iban: description: The [International Bank Account Number](https://en.wikipedia.org/wiki/International_Bank_Account_Number) (IBAN). type: string ownerName: description: "The name of the bank account holder.\nIf you submit a name\ \ with non-Latin characters, we automatically replace some of them with\ \ corresponding Latin characters to meet the FATF recommendations. For\ \ example:\n* \u03C712 is converted to ch12.\n* \xFCA is converted to\ \ euA.\n* Peter M\xF8ller is converted to Peter Mller, because banks don't\ \ accept '\xF8'.\nAfter replacement, the ownerName must have at least\ \ three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them\ \ must be a valid Latin character (A-Z, a-z). For example:\n* John17 -\ \ allowed.\n* J17 - allowed.\n* 171 - not allowed.\n* John-7 - allowed.\n\ > If provided details don't match the required format, the response returns\ \ the error message: 203 'Invalid bank account holder name'." type: string taxId: x-addedInVersion: '18' description: The bank account holder's tax ID. type: string type: object BillDeskDetails: additionalProperties: false properties: issuer: description: The issuer id of the shopper's selected bank. type: string type: description: '**billdesk**' enum: - billdesk_online - billdesk_wallet type: string required: - type - issuer title: BillDesk type: object BillingAddress: additionalProperties: false properties: city: description: 'The name of the city. Maximum length: 3000 characters.' maxLength: 3000 type: string country: description: 'The two-character ISO-3166-1 alpha-2 country code. For example, **US**. > If you don''t know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.' type: string houseNumberOrName: description: 'The number or name of the house. Maximum length: 3000 characters.' maxLength: 3000 type: string postalCode: description: A maximum of five digits for an address in the US, or a maximum of ten characters for an address in all other countries. type: string stateOrProvince: description: 'The two-character ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada. > Required for the US and Canada.' maxLength: 1000 type: string street: description: 'The name of the street. Maximum length: 3000 characters. > The house number should not be included in this field; it should be separately provided via `houseNumberOrName`.' maxLength: 3000 type: string required: - street - houseNumberOrName - city - postalCode - country type: object BlikDetails: additionalProperties: false properties: blikCode: description: BLIK code consisting of 6 digits. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: description: '**blik**' enum: - blik type: string title: BLIK type: object BrowserInfo: additionalProperties: false properties: acceptHeader: description: The accept header value of the shopper's browser. type: string userAgent: description: The user agent value of the shopper's browser. type: string required: - userAgent - acceptHeader type: object CancelOrderRequest: additionalProperties: false properties: merchantAccount: description: The merchant account identifier that orderData belongs to. type: string order: description: The order request object that contains a pspReference that represents the order and the matching encrypted order data. $ref: '#/components/schemas/EncryptedOrderData' required: - order - merchantAccount type: object CancelOrderResponse: additionalProperties: false properties: pspReference: description: A unique reference of the cancellation request. type: string resultCode: description: "The result of the cancellation request.\n\nPossible values:\n\ \n* **Received** \u2013 Indicates the cancellation has successfully been\ \ received by Adyen, and will be processed." enum: - Received type: string required: - pspReference - resultCode type: object Card: additionalProperties: false properties: cvc: description: "The [card verification code](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid)\ \ (1-20 characters). Depending on the card brand, it is known also as:\n\ * CVV2/CVC2 \u2013 length: 3 digits\n* CID \u2013 length: 4 digits\n>\ \ If you are using [Client-Side Encryption](https://docs.adyen.com/classic-integration/cse-integration-ecommerce),\ \ the CVC code is present in the encrypted data. You must never post the\ \ card details to the server.\n> This field must be always present in\ \ a [one-click payment request](https://docs.adyen.com/classic-integration/recurring-payments).\n\ > When this value is returned in a response, it is always empty because\ \ it is not stored." maxLength: 20 minLength: 1 type: string expiryMonth: description: 'The card expiry month. Format: 2 digits, zero-padded for single digits. For example: * 03 = March * 11 = November' maxLength: 2 minLength: 1 type: string expiryYear: description: 'The card expiry year. Format: 4 digits. For example: 2020' maxLength: 4 minLength: 4 type: string holderName: description: The name of the cardholder, as printed on the card. maxLength: 50 minLength: 1 type: string issueNumber: description: The issue number of the card (for some UK debit cards only). maxLength: 2 minLength: 1 type: string number: description: 'The card number (4-19 characters). Do not use any separators. When this value is returned in a response, only the last 4 digits of the card number are returned.' maxLength: 19 minLength: 4 type: string startMonth: description: The month component of the start date (for some UK debit cards only). maxLength: 2 minLength: 1 type: string startYear: description: The year component of the start date (for some UK debit cards only). maxLength: 4 minLength: 4 type: string type: object CardBrandDetails: additionalProperties: false properties: supported: description: Indicates if you support the card brand. type: boolean type: description: The name of the card brand. type: string type: object CardDetails: additionalProperties: false properties: brand: description: 'Secondary brand of the card. For example: **plastix**, **hmclub**.' type: string cupsecureplus.smscode: deprecated: true type: string cvc: description: The card verification code. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string encryptedCardNumber: description: The encrypted card number. maxLength: 15000 type: string encryptedExpiryMonth: description: The encrypted card expiry month. maxLength: 15000 type: string encryptedExpiryYear: description: The encrypted card expiry year. maxLength: 15000 type: string encryptedSecurityCode: description: The encrypted card verification code. maxLength: 15000 type: string expiryMonth: description: The card expiry month. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string expiryYear: description: The card expiry year. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string holderName: description: The name of the card holder. maxLength: 15000 type: string networkPaymentReference: description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment. type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string shopperNotificationReference: description: The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used only for recurring payments in India. type: string threeDS2SdkVersion: description: Required for mobile integrations. Version of the 3D Secure 2 mobile SDK. maxLength: 12 type: string type: default: scheme description: Default payment method details. Common for scheme payment methods, and for simple payment method details. enum: - bcmc - scheme - networkToken - giftcard - card type: string title: Card type: object CardDetailsRequest: additionalProperties: false properties: cardNumber: description: "A minimum of the first 8 digits of the card number and a maximum\ \ of the full card number. 11 digits gives the best result. \n\nYou must\ \ be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide)\ \ to collect raw card data." type: string countryCode: description: 'The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE' type: string encryptedCardNumber: description: The encrypted card number. maxLength: 15000 type: string merchantAccount: description: The merchant account identifier, with which you want to process the transaction. type: string supportedBrands: description: "The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands)\ \ array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods)\ \ response. \n\nIf not included, our API uses the ones configured for\ \ your merchant account and, if provided, the country code." items: type: string type: array required: - cardNumber - merchantAccount type: object CardDetailsResponse: additionalProperties: false properties: brands: description: The list of brands identified for the card. items: $ref: '#/components/schemas/CardBrandDetails' type: array issuingCountryCode: description: The two-letter country code of the country where the card was issued. type: string type: object CardDonations: additionalProperties: false properties: brand: description: 'Secondary brand of the card. For example: **plastix**, **hmclub**.' type: string cupsecureplus.smscode: deprecated: true type: string cvc: description: The card verification code. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string encryptedCardNumber: description: The encrypted card number. maxLength: 15000 type: string encryptedExpiryMonth: description: The encrypted card expiry month. maxLength: 15000 type: string encryptedExpiryYear: description: The encrypted card expiry year. maxLength: 15000 type: string encryptedSecurityCode: description: The encrypted card verification code. maxLength: 15000 type: string expiryMonth: description: The card expiry month. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string expiryYear: description: The card expiry year. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string holderName: description: The name of the card holder. maxLength: 15000 type: string networkPaymentReference: description: The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment. type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string shopperNotificationReference: description: The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used only for recurring payments in India. type: string threeDS2SdkVersion: description: Required for mobile integrations. Version of the 3D Secure 2 mobile SDK. maxLength: 12 type: string type: default: scheme description: Default payment method details. Common for scheme payment methods, and for simple payment method details. enum: - bcmc - scheme - networkToken - giftcard - card type: string title: Card type: object CashAppDetails: additionalProperties: false properties: cashtag: description: Cash App issued cashtag for recurring payment type: string customerId: description: Cash App issued customerId for recurring payment type: string grantId: description: Cash App issued grantId for one time payment type: string onFileGrantId: description: Cash App issued onFileGrantId for recurring payment type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string requestId: description: Cash App request id type: string type: default: cashapp description: cashapp enum: - cashapp type: string title: Stored Payment Method type: object CellulantDetails: additionalProperties: false properties: issuer: description: The Cellulant issuer. type: string type: default: cellulant description: '**Cellulant**' enum: - cellulant type: string title: Cellulant type: object CheckoutOrderResponse: additionalProperties: false properties: amount: description: The initial amount of the order. $ref: '#/components/schemas/Amount' expiresAt: description: The expiry date for the order. type: string orderData: description: The encrypted order data. type: string pspReference: description: The `pspReference` that belongs to the order. type: string reference: description: The merchant reference for the order. type: string remainingAmount: description: The updated remaining amount. $ref: '#/components/schemas/Amount' required: - pspReference type: object CommonField: additionalProperties: false properties: name: description: Name of the field. For example, Name of External Platform. type: string version: description: Version of the field. For example, Version of External Platform. type: string type: object Company: additionalProperties: false properties: homepage: description: The company website's home page. type: string name: description: The company name. type: string registrationNumber: description: Registration number of the company. type: string registryLocation: description: Registry location of the company. type: string taxId: description: Tax ID of the company. type: string type: description: The company type. type: string type: object Configuration: additionalProperties: false properties: avs: description: Describes the configuration for AVS ([Address Verification System](https://en.wikipedia.org/wiki/Address_Verification_System)). $ref: '#/components/schemas/Avs' cardHolderName: x-addedInVersion: '37' description: 'Determines whether the cardholder name should be provided or not. Permitted values: * NONE * OPTIONAL * REQUIRED' enum: - NONE - OPTIONAL - REQUIRED type: string installments: description: Describes the configuration for [installment payments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). $ref: '#/components/schemas/InstallmentsNumber' shopperInput: x-addedInVersion: '37' description: Determines how to display the details fields. $ref: '#/components/schemas/ShopperInput' type: object CreateOrderRequest: additionalProperties: false properties: amount: description: The total amount of the order. $ref: '#/components/schemas/Amount' expiresAt: description: The date that order expires; e.g. 2019-03-23T12:25:28Z. If not provided, the default expiry duration is 1 day. type: string merchantAccount: description: The merchant account identifier, with which you want to process the order. type: string reference: description: A custom reference identifying the order. type: string required: - merchantAccount - reference - amount type: object CreateOrderResponse: additionalProperties: false properties: additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - $ref: '#/components/schemas/ResponseAdditionalDataDomesticError' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' - $ref: '#/components/schemas/ResponseAdditionalDataSepa' description: 'Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Developers** > **Additional data**.' type: object expiresAt: description: The date that the order will expire. type: string fraudResult: description: The fraud result properties of the payment. $ref: '#/components/schemas/FraudResult' orderData: description: The encrypted data that will be used by merchant for adding payments to the order. type: string pspReference: description: Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. type: string reference: description: The reference provided by merchant for creating the order. type: string refusalReason: description: 'If the payment''s authorisation is refused or an error occurs during authorisation, this field holds Adyen''s mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' type: string remainingAmount: description: The remaining amount in the order. $ref: '#/components/schemas/Amount' resultCode: description: "The result of the order creation request.\n The value is always\ \ **Success**." enum: - Success type: string required: - remainingAmount - expiresAt - orderData - resultCode type: object DeliveryAddress: additionalProperties: false properties: city: description: 'The name of the city. Maximum length: 3000 characters.' maxLength: 3000 type: string country: description: 'The two-character ISO-3166-1 alpha-2 country code. For example, **US**. > If you don''t know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.' type: string firstName: type: string houseNumberOrName: description: 'The number or name of the house. Maximum length: 3000 characters.' maxLength: 3000 type: string lastName: type: string postalCode: description: A maximum of five digits for an address in the US, or a maximum of ten characters for an address in all other countries. type: string stateOrProvince: description: 'The two-character ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada. > Required for the US and Canada.' maxLength: 1000 type: string street: description: 'The name of the street. Maximum length: 3000 characters. > The house number should not be included in this field; it should be separately provided via `houseNumberOrName`.' maxLength: 3000 type: string required: - street - houseNumberOrName - city - postalCode - country type: object DeliveryMethod: additionalProperties: false properties: amount: description: The cost of this delivery method. $ref: '#/components/schemas/Amount' description: description: The name of the delivery method as shown to the shopper. type: string reference: description: The reference of the delivery method. type: string selected: description: If you display the PayPal lightbox with delivery methods, set to **true** for the delivery method that is selected. Only one delivery method can be selected at a time. type: boolean type: description: The type of the delivery method. enum: - Shipping type: string type: object DokuDetails: additionalProperties: false properties: firstName: description: The shopper's first name. type: string lastName: description: The shopper's last name. type: string shopperEmail: description: The shopper's email. type: string type: description: '**doku**' enum: - doku_mandiri_va - doku_cimb_va - doku_danamon_va - doku_bni_va - doku_permata_lite_atm - doku_bri_va - doku_bca_va - doku_alfamart - doku_indomaret - doku_wallet - doku_ovo type: string required: - type - firstName - lastName - shopperEmail title: Doku type: object DonationPaymentRequest: additionalProperties: false properties: additionalAmount: description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) request to use a non-zero value, assign this value to `additionalAmount` (while the amount must be still set to 0 to trigger BIN or card verification). Required to be in the same currency as the `amount`. ' $ref: '#/components/schemas/Amount' additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/AdditionalData3DSecure' - $ref: '#/components/schemas/AdditionalDataAirline' - $ref: '#/components/schemas/AdditionalDataCarRental' - $ref: '#/components/schemas/AdditionalDataCommon' - $ref: '#/components/schemas/AdditionalDataLevel23' - $ref: '#/components/schemas/AdditionalDataLodging' - $ref: '#/components/schemas/AdditionalDataOpenInvoice' - $ref: '#/components/schemas/AdditionalDataOpi' - $ref: '#/components/schemas/AdditionalDataRatepay' - $ref: '#/components/schemas/AdditionalDataRetry' - $ref: '#/components/schemas/AdditionalDataRisk' - $ref: '#/components/schemas/AdditionalDataRiskStandalone' - $ref: '#/components/schemas/AdditionalDataSubMerchant' - $ref: '#/components/schemas/AdditionalDataTemporaryServices' - $ref: '#/components/schemas/AdditionalDataWallets' description: 'This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.' type: object allowedPaymentMethods: x-addedInVersion: '33' description: 'List of payment methods to be presented to the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"allowedPaymentMethods":["ideal","giropay"]`' items: type: string type: array amount: description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero). $ref: '#/components/schemas/Amount' billingAddress: description: 'The address where to send the invoice. > The `billingAddress` object is required in the following scenarios. Include all of the fields within this object. >* For 3D Secure 2 transactions in all browser-based and mobile implementations. >* For cross-border payouts to and from Canada.' $ref: '#/components/schemas/BillingAddress' blockedPaymentMethods: x-addedInVersion: '33' description: 'List of payment methods to be hidden from the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"blockedPaymentMethods":["ideal","giropay"]`' items: type: string type: array browserInfo: description: 'The shopper''s browser information. > For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.' $ref: '#/components/schemas/BrowserInfo' captureDelayHours: description: The delay between the authorisation and scheduled auto-capture, specified in hours. format: int32 type: integer channel: description: 'The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web' enum: - iOS - Android - Web type: string company: x-addedInVersion: '32' description: Information regarding the company. $ref: '#/components/schemas/Company' countryCode: description: 'The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE' maxLength: 100 type: string dateOfBirth: description: 'The shopper''s date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' format: date-time type: string dccQuote: description: The forex quote as returned in the response of the forex service. $ref: '#/components/schemas/ForexQuote' deliveryAddress: description: The address where the purchased goods should be delivered. $ref: '#/components/schemas/DeliveryAddress' deliveryDate: description: 'The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00' format: date-time type: string deviceFingerprint: description: A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). maxLength: 5000 type: string donationAccount: description: Donation account to which the transaction is credited. type: string donationOriginalPspReference: description: PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided. type: string donationToken: description: Donation token received in the `/payments` call. type: string enableOneClick: x-addedInVersion: '32' description: When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments. type: boolean enablePayOut: x-addedInVersion: '32' description: When true and `shopperReference` is provided, the payment details will be tokenized for payouts. type: boolean enableRecurring: x-addedInVersion: '32' description: When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments. type: boolean entityType: description: The type of the entity the payment is processed for. enum: - NaturalPerson - CompanyName type: string fraudOffset: description: An integer value that is added to the normal fraud score. The value can be either positive or negative. format: int32 type: integer fundOrigin: description: The person or entity funding the money. $ref: '#/components/schemas/FundOrigin' fundRecipient: description: the person or entity receiving the money $ref: '#/components/schemas/FundRecipient' installments: description: Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). $ref: '#/components/schemas/Installments' lineItems: x-addedInVersion: '32' description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, and Zip.' items: $ref: '#/components/schemas/LineItem' type: array mandate: description: The mandate details to initiate recurring transaction. $ref: '#/components/schemas/Mandate' mcc: description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. type: string merchantAccount: description: The merchant account identifier, with which you want to process the transaction. type: string merchantOrderReference: description: 'This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' maxLength: 1000 type: string metadata: additionalProperties: type: string description: 'Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the "177" error occurs: "Metadata size exceeds limit". * Maximum 20 characters per key. * Maximum 80 characters per value. ' type: object mpiData: description: Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: description: The order information required for partial payments. $ref: '#/components/schemas/EncryptedOrderData' orderReference: description: When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead. type: string paymentMethod: description: The type and required details of a payment method to use. oneOf: - $ref: '#/components/schemas/ApplePayDonations' - $ref: '#/components/schemas/CardDonations' - $ref: '#/components/schemas/GooglePayDonations' - $ref: '#/components/schemas/IdealDonations' - $ref: '#/components/schemas/PayWithGoogleDonations' recurringExpiry: description: Date after which no further authorisations shall be performed. Only for 3D Secure 2. type: string recurringFrequency: description: Minimum number of days between authorisations. Only for 3D Secure 2. type: string recurringProcessingModel: x-addedInVersion: '30' description: "Defines a recurring payment type. Required when creating a\ \ token to store payment details or using stored payment details.\nAllowed\ \ values:\n* `Subscription` \u2013 A transaction for a fixed or variable\ \ amount, which follows a fixed schedule.\n* `CardOnFile` \u2013 With\ \ a card-on-file (CoF) transaction, card details are stored to enable\ \ one-click or omnichannel journeys, or simply to streamline the checkout\ \ process. Any subscription not following a fixed schedule is also considered\ \ a card-on-file transaction.\n* `UnscheduledCardOnFile` \u2013 An unscheduled\ \ card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed\ \ schedule and/or have variable amounts. For example, automatic top-ups\ \ when a cardholder's balance drops below a certain amount.\n" enum: - CardOnFile - Subscription - UnscheduledCardOnFile type: string redirectFromIssuerMethod: x-addedInVersion: '32' description: Specifies the redirect method (GET or POST) when redirecting back from the issuer. type: string redirectToIssuerMethod: x-addedInVersion: '32' description: Specifies the redirect method (GET or POST) when redirecting to the issuer. type: string reference: description: 'The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens ("-"). Maximum length: 80 characters.' type: string returnUrl: description: 'The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name`' maxLength: 8000 type: string riskData: description: Contains risk data, such as client-side data, used to identify risk for a transaction. $ref: '#/components/schemas/RiskData' selectedRecurringDetailReference: description: The `recurringDetailReference` you want to use for this payment. The value `LATEST` can be used to select the most recently stored recurring detail. type: string sessionValidity: description: 'The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00' type: string shopperEmail: description: 'The shopper''s email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.' type: string shopperIP: description: 'The shopper''s IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).' maxLength: 1000 type: string shopperInteraction: description: 'Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.' enum: - Ecommerce - ContAuth - Moto - POS type: string shopperLocale: description: The combination of a language code and a country code to specify the language to be used in the payment. type: string shopperName: description: The shopper's full name. $ref: '#/components/schemas/Name' shopperReference: description: "Required for recurring payments. \nYour reference to uniquely\ \ identify this shopper, for example user ID or account ID. Minimum length:\ \ 3 characters.\n> Your reference must not include personally identifiable\ \ information (PII), for example name or email address." maxLength: 256 minLength: 3 type: string shopperStatement: description: "The text to be shown on the shopper's bank statement.\n We\ \ recommend sending a maximum of 22 characters, otherwise banks might\ \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ \ spaces, and special characters **. , ' _ - ? + * /**." maxLength: 10000 type: string socialSecurityNumber: description: The shopper's social security number. type: string splits: x-addedInVersion: '37' description: An array of objects specifying how to split a payment when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information), [Classic Platforms integration](https://docs.adyen.com/classic-platforms/processing-payments#providing-split-information), or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). items: $ref: '#/components/schemas/Split' type: array store: description: Required for Adyen for Platforms integrations if you are a platform model. This is your [reference](https://docs.adyen.com/api-explorer/Management/3/post/merchants/(merchantId)/stores#request-reference) (on [balance platform](https://docs.adyen.com/platforms)) or the [storeReference](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccountHolder#request-accountHolderDetails-storeDetails-storeReference) (in the [classic integration](https://docs.adyen.com/classic-platforms/processing-payments/route-payment-to-store/#route-a-payment-to-a-store)) for the ecommerce or point-of-sale store that is processing the payment. maxLength: 16 minLength: 1 type: string telephoneNumber: description: The shopper's telephone number. type: string trustedShopper: x-addedInVersion: '37' description: Set to true if the payment should be routed to a trusted MID. type: boolean required: - paymentMethod - returnUrl - merchantAccount - reference - amount type: object DonationPaymentResponse: additionalProperties: false properties: amount: description: Authorised amount in the transaction. $ref: '#/components/schemas/Amount' donationAccount: description: The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). type: string id: description: Your unique resource identifier. type: string merchantAccount: description: The merchant account identifier, with which you want to process the transaction. type: string payment: description: Action to be taken for completing the payment. $ref: '#/components/schemas/PaymentResponse' reference: description: 'The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens ("-"). Maximum length: 80 characters.' type: string status: description: 'The status of the donation transaction. Possible values: * **completed** * **pending** * **refused**' enum: - completed - pending - refused type: string type: object DotpayDetails: additionalProperties: false properties: issuer: description: The Dotpay issuer value of the shopper's selected bank. Set this to an **id** of a Dotpay issuer to preselect it. type: string type: default: dotpay description: '**dotpay**' enum: - dotpay type: string required: - issuer title: Dotpay type: object DragonpayDetails: additionalProperties: false properties: issuer: description: The Dragonpay issuer value of the shopper's selected bank. Set this to an **id** of a Dragonpay issuer to preselect it. type: string shopperEmail: description: "The shopper\u2019s email address." type: string type: description: '**dragonpay**' enum: - dragonpay_ebanking - dragonpay_otc_banking - dragonpay_otc_non_banking - dragonpay_otc_philippines type: string required: - type - issuer title: Dragonpay type: object EcontextVoucherDetails: additionalProperties: false properties: firstName: description: The shopper's first name. type: string lastName: description: The shopper's last name. type: string shopperEmail: description: The shopper's email. type: string telephoneNumber: description: The shopper's contact number. It must have an international number format, for example **+31 20 779 1846**. Formats like **+31 (0)20 779 1846** or **0031 20 779 1846** are not accepted. type: string type: description: '**econtextvoucher**' enum: - econtext_seveneleven - econtext_stores type: string required: - type - firstName - lastName - shopperEmail - telephoneNumber title: Voucher type: object EncryptedOrderData: additionalProperties: false properties: orderData: description: The encrypted order data. maxLength: 5000 type: string pspReference: description: The `pspReference` that belongs to the order. type: string required: - pspReference - orderData type: object ExternalPlatform: additionalProperties: false properties: integrator: description: External platform integrator. type: string name: description: Name of the field. For example, Name of External Platform. type: string version: description: Version of the field. For example, Version of External Platform. type: string type: object ForexQuote: additionalProperties: false properties: account: description: The account name. type: string accountType: description: The account type. type: string baseAmount: description: The base amount. $ref: '#/components/schemas/Amount' basePoints: description: The base points. format: int32 type: integer buy: description: The buy rate. $ref: '#/components/schemas/Amount' interbank: description: The interbank amount. $ref: '#/components/schemas/Amount' reference: description: The reference assigned to the forex quote request. type: string sell: description: The sell rate. $ref: '#/components/schemas/Amount' signature: description: The signature to validate the integrity. type: string source: description: The source of the forex quote. type: string type: description: The type of forex. type: string validTill: description: The date until which the forex quote is valid. format: date-time type: string required: - validTill - basePoints type: object FraudCheckResult: additionalProperties: false properties: accountScore: description: The fraud score generated by the risk check. format: int32 type: integer checkId: description: The ID of the risk check. format: int32 type: integer name: description: The name of the risk check. type: string required: - checkId - name - accountScore type: object FraudCheckResultWrapper: properties: FraudCheckResult: $ref: '#/components/schemas/FraudCheckResult' FraudResult: additionalProperties: false properties: accountScore: description: The total fraud score generated by the risk checks. format: int32 type: integer results: description: The result of the individual risk checks. items: $ref: '#/components/schemas/FraudCheckResultWrapper' type: array required: - accountScore type: object FundOrigin: additionalProperties: false properties: billingAddress: description: The address where to send the invoice. $ref: '#/components/schemas/Address' shopperEmail: description: Email address of the person. type: string shopperName: description: The name of the person $ref: '#/components/schemas/Name' telephoneNumber: description: Phone number of the person type: string walletIdentifier: type: string type: object FundRecipient: additionalProperties: false properties: billingAddress: description: The address where to send the invoice. $ref: '#/components/schemas/Address' paymentMethod: description: The payment method used by the shopper. $ref: '#/components/schemas/CardDetails' shopperEmail: description: The email address of the shopper. type: string shopperName: description: The name of the shopper. $ref: '#/components/schemas/Name' shopperReference: description: "Required for recurring payments. \nYour reference to uniquely\ \ identify this shopper, for example user ID or account ID. Minimum length:\ \ 3 characters.\n> Your reference must not include personally identifiable\ \ information (PII), for example name or email address." maxLength: 256 minLength: 3 type: string storedPaymentMethodId: description: This is the `recurringDetailReference` returned in the response when you created the token. maxLength: 64 type: string subMerchant: description: 'Required for Back-to-Back/ purchase driven load in Wallet transactions. Contains the final merchant who will be receiving the money, also known as subMerchant, information.' $ref: '#/components/schemas/SubMerchant' telephoneNumber: description: The telephone number of the shopper. type: string walletIdentifier: description: Indicates where the money is going. type: string walletOwnerTaxId: description: Indicates the tax identifier of the fund recepient type: string type: object GenericIssuerPaymentMethodDetails: additionalProperties: false properties: issuer: description: The issuer id of the shopper's selected bank. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: description: '**genericissuer**' enum: - onlineBanking_PL - eps - onlineBanking_SK - onlineBanking_CZ type: string required: - type - issuer title: Stored Payment Method type: object GiropayDetails: additionalProperties: false properties: recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: giropay description: '**giropay**' enum: - giropay type: string title: Giropay type: object GooglePayDetails: additionalProperties: false properties: fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string googlePayCardNetwork: description: 'The selected payment card network. ' type: string googlePayToken: description: The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) `PaymentData` response. maxLength: 10000 type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: googlepay description: '**googlepay**, **paywithgoogle**' enum: - googlepay type: string required: - googlePayToken title: Google Pay type: object GooglePayDonations: additionalProperties: false properties: fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string googlePayCardNetwork: description: 'The selected payment card network. ' type: string googlePayToken: description: The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) `PaymentData` response. maxLength: 10000 type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: googlepay description: '**googlepay**, **paywithgoogle**' enum: - googlepay type: string required: - googlePayToken title: Google Pay type: object IdealDetails: additionalProperties: false properties: issuer: description: The iDEAL issuer value of the shopper's selected bank. Set this to an **id** of an iDEAL issuer to preselect it. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: ideal description: '**ideal**' enum: - ideal type: string required: - issuer title: iDEAL type: object IdealDonations: additionalProperties: false properties: issuer: description: The iDEAL issuer value of the shopper's selected bank. Set this to an **id** of an iDEAL issuer to preselect it. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: ideal description: '**ideal**' enum: - ideal type: string required: - issuer title: iDEAL type: object InputDetail: additionalProperties: false properties: configuration: additionalProperties: type: string description: Configuration parameters for the required input. type: object details: description: Input details can also be provided recursively. items: $ref: '#/components/schemas/SubInputDetail' type: array inputDetails: deprecated: true description: Input details can also be provided recursively (deprecated). items: $ref: '#/components/schemas/SubInputDetail' type: array itemSearchUrl: description: In case of a select, the URL from which to query the items. type: string items: description: In case of a select, the items to choose from. items: $ref: '#/components/schemas/Item' type: array key: description: The value to provide in the result. type: string optional: description: True if this input value is optional. type: boolean type: description: The type of the required input. type: string value: description: The value can be pre-filled, if available. type: string type: object InstallmentOption: additionalProperties: false properties: maxValue: description: The maximum number of installments offered for this payment method. format: int32 type: integer type: object Installments: additionalProperties: false properties: value: description: 'Defines the number of installments. Usually, the maximum allowed number of installments is capped. For example, it may not be possible to split a payment in more than 24 installments. The acquirer sets this upper limit, so its value may vary. This value can be zero for Installments processed in Mexico' format: int32 type: integer required: - value type: object InstallmentsNumber: additionalProperties: false properties: maxNumberOfInstallments: description: Maximum number of installments format: int32 type: integer required: - maxNumberOfInstallments type: object Item: additionalProperties: false properties: id: description: The value to provide in the result. type: string name: description: The display name. type: string type: object KlarnaDetails: additionalProperties: false properties: billingAddress: description: The address where to send the invoice. type: string deliveryAddress: description: The address where the goods should be delivered. type: string personalDetails: description: Shopper name, date of birth, phone number, and email address. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string subtype: description: The type of flow to initiate. type: string type: default: klarna description: '**klarna**' enum: - klarna - klarnapayments - klarnapayments_account - klarnapayments_b2b - klarna_paynow - klarna_account - klarna_b2b type: string required: - type title: Klarna type: object LineItem: additionalProperties: false properties: amountExcludingTax: description: Item amount excluding the tax, in minor units. format: int64 type: integer amountIncludingTax: description: Item amount including the tax, in minor units. format: int64 type: integer description: description: Description of the line item. maxLength: 10000 type: string id: description: ID of the line item. type: string imageUrl: description: Link to the picture of the purchased item. type: string itemCategory: description: Item category, used by the payment methods PayPal and Ratepay. type: string productUrl: description: Link to the purchased item. type: string quantity: description: Number of items. format: int64 type: integer taxAmount: description: Tax amount, in minor units. format: int64 type: integer taxPercentage: description: Tax percentage, in minor units. format: int64 type: integer type: object Mandate: additionalProperties: false properties: amount: description: The billing amount (in minor units) of the recurring transactions. type: string amountRule: description: "The limitation rule of the billing amount.\n\nPossible values:\n\ \ * **max**: The transaction amount can not exceed the `amount`.\n\n *\ \ **exact**: The transaction amount should be the same as the `amount`.\n\ \n" enum: - max - exact type: string billingAttemptsRule: description: "The rule to specify the period, within which the recurring\ \ debit can happen, relative to the mandate recurring date.\n\nPossible\ \ values:\n\n * **on**: On a specific date.\n\n * **before**: Before\ \ and on a specific date.\n\n * **after**: On and after a specific date.\n\ \n" enum: - 'on' - before - after type: string billingDay: description: 'The number of the day, on which the recurring debit can happen. Should be within the same calendar month as the mandate recurring date. Possible values: 1-31 based on the `frequency`.' type: string endsAt: description: End date of the billing plan, in YYYY-MM-DD format. type: string frequency: description: 'The frequency with which a shopper should be charged. Possible values: **daily**, **weekly**, **biWeekly**, **monthly**, **quarterly**, **halfYearly**, **yearly**.' enum: - adhoc - daily - weekly - biWeekly - monthly - quarterly - halfYearly - yearly type: string remarks: description: The message shown by UPI to the shopper on the approval screen. type: string startsAt: description: Start date of the billing plan, in YYYY-MM-DD format. By default, the transaction date. type: string required: - frequency - amount - endsAt type: object MasterpassDetails: additionalProperties: false properties: fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string masterpassTransactionId: description: The Masterpass transaction ID. type: string type: default: masterpass description: '**masterpass**' enum: - masterpass type: string required: - masterpassTransactionId title: Masterpass type: object MbwayDetails: additionalProperties: false properties: shopperEmail: description: '' type: string telephoneNumber: description: '' type: string type: default: mbway description: '**mbway**' enum: - mbway type: string required: - telephoneNumber - shopperEmail title: MBWay type: object MerchantDevice: additionalProperties: false properties: os: description: Operating system running on the merchant device. type: string osVersion: description: Version of the operating system on the merchant device. type: string reference: description: Merchant device reference. type: string type: object MobilePayDetails: additionalProperties: false properties: type: default: mobilepay description: '**mobilepay**' enum: - mobilepay type: string title: MobilePay type: object MolPayDetails: additionalProperties: false properties: issuer: description: The shopper's bank. Specify this with the issuer value that corresponds to this bank. type: string type: description: '**molpay**' enum: - molpay_ebanking_fpx_MY - molpay_ebanking_TH type: string required: - type - issuer title: MOLPay type: object Name: additionalProperties: false properties: firstName: description: The first name. maxLength: 80 type: string lastName: description: The last name. maxLength: 80 type: string required: - firstName - lastName type: object OpenInvoiceDetails: additionalProperties: false properties: billingAddress: description: The address where to send the invoice. type: string deliveryAddress: description: The address where the goods should be delivered. type: string personalDetails: description: Shopper name, date of birth, phone number, and email address. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: openinvoice description: '**openinvoice**' enum: - openinvoice - afterpay_directdebit - atome_pos type: string title: Open Invoice type: object PayPalDetails: additionalProperties: false properties: orderID: description: The unique ID associated with the order. type: string payeePreferred: description: IMMEDIATE_PAYMENT_REQUIRED or UNRESTRICTED type: string payerID: description: The unique ID associated with the payer. type: string payerSelected: description: PAYPAL or PAYPAL_CREDIT type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string subtype: description: The type of flow to initiate. enum: - redirect - sdk type: string type: default: paypal description: '**paypal**' enum: - paypal type: string required: - type title: PayPal type: object PayUUpiDetails: additionalProperties: false properties: recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string shopperNotificationReference: description: The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used for recurring payment only. type: string type: default: payu_IN_upi description: '**payu_IN_upi**' enum: - payu_IN_upi type: string virtualPaymentAddress: description: The virtual payment address for UPI. type: string required: - type title: PayU type: object PayWithGoogleDetails: additionalProperties: false properties: fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string googlePayToken: description: The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) `PaymentData` response. maxLength: 5000 type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: paywithgoogle description: '**paywithgoogle**' enum: - paywithgoogle type: string required: - googlePayToken title: Google Pay type: object PayWithGoogleDonations: additionalProperties: false properties: fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string googlePayToken: description: The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) `PaymentData` response. maxLength: 5000 type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: paywithgoogle description: '**paywithgoogle**' enum: - paywithgoogle type: string required: - googlePayToken title: Google Pay type: object PaymentAmountUpdateRequest: additionalProperties: false properties: amount: description: The updated amount. The `currency` must match the currency used in authorisation. $ref: '#/components/schemas/Amount' applicationInfo: description: Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). $ref: '#/components/schemas/ApplicationInfo' merchantAccount: description: The merchant account that is used to process the payment. type: string reason: description: "The reason for the amount update. Possible values: \n* **delayedCharge**\ \ \n* **noShow**" enum: - delayedCharge - noShow type: string reference: description: 'Your reference for the amount update request. Maximum length: 80 characters.' type: string splits: description: An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For more information, see how to process payments for [marketplaces](https://docs.adyen.com/marketplaces/process-payments) or [platforms](https://docs.adyen.com/platforms/process-payments). items: $ref: '#/components/schemas/Split' type: array required: - merchantAccount - amount type: object PaymentAmountUpdateResponse: additionalProperties: false properties: amount: description: The updated amount. $ref: '#/components/schemas/Amount' merchantAccount: description: The merchant account that is used to process the payment. type: string paymentPspReference: description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to update. ' type: string pspReference: description: Adyen's 16-character reference associated with the amount update request. type: string reason: description: "The reason for the amount update. Possible values: \n* **DelayedCharge**\ \ \n* **NoShow**" enum: - delayedCharge - noShow type: string reference: description: 'Your reference for the amount update request. Maximum length: 80 characters.' type: string splits: description: An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For more information, see how to process payments for [marketplaces](https://docs.adyen.com/marketplaces/process-payments) or [platforms](https://docs.adyen.com/platforms/process-payments). items: $ref: '#/components/schemas/Split' type: array status: description: The status of your request. This will always have the value **received**. enum: - received type: string required: - status - merchantAccount - amount - reference - pspReference - paymentPspReference type: object PaymentCancelRequest: additionalProperties: false properties: applicationInfo: description: Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). $ref: '#/components/schemas/ApplicationInfo' merchantAccount: description: The merchant account that is used to process the payment. type: string reference: description: 'Your reference for the cancel request. Maximum length: 80 characters.' type: string required: - merchantAccount type: object PaymentCancelResponse: additionalProperties: false properties: merchantAccount: description: The merchant account that is used to process the payment. type: string paymentPspReference: description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to cancel. ' type: string pspReference: description: Adyen's 16-character reference associated with the cancel request. type: string reference: description: Your reference for the cancel request. type: string status: description: The status of your request. This will always have the value **received**. enum: - received type: string required: - status - merchantAccount - paymentPspReference - pspReference type: object PaymentCaptureRequest: additionalProperties: false properties: amount: description: The amount that you want to capture. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' applicationInfo: description: Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). $ref: '#/components/schemas/ApplicationInfo' lineItems: description: 'Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). > This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Atome, Clearpay, Klarna, Ratepay, and Zip.' items: $ref: '#/components/schemas/LineItem' type: array merchantAccount: description: The merchant account that is used to process the payment. type: string reference: description: 'Your reference for the capture request. Maximum length: 80 characters.' type: string splits: description: An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For more information, see how to process payments for [marketplaces](https://docs.adyen.com/marketplaces/split-payments) or [platforms](https://docs.adyen.com/platforms/online-payments/split-payments/). items: $ref: '#/components/schemas/Split' type: array required: - merchantAccount - amount type: object PaymentCaptureResponse: additionalProperties: false properties: amount: description: The captured amount. $ref: '#/components/schemas/Amount' lineItems: description: 'Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). > This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Atome, Clearpay, Klarna, Ratepay, and Zip.' items: $ref: '#/components/schemas/LineItem' type: array merchantAccount: description: The merchant account that is used to process the payment. type: string paymentPspReference: description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to capture. ' type: string pspReference: description: Adyen's 16-character reference associated with the capture request. type: string reference: description: Your reference for the capture request. type: string splits: description: An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For more information, see how to process payments for [marketplaces](https://docs.adyen.com/marketplaces/split-payments) or [platforms](https://docs.adyen.com/platforms/online-payments/split-payments/). items: $ref: '#/components/schemas/Split' type: array status: description: The status of your request. This will always have the value **received**. enum: - received type: string required: - status - merchantAccount - amount - pspReference - paymentPspReference type: object PaymentCompletionDetails: additionalProperties: false properties: MD: description: A payment session identifier returned by the card issuer. maxLength: 20000 type: string PaReq: description: (3D) Payment Authentication Request data for the card issuer. maxLength: 20000 type: string PaRes: description: (3D) Payment Authentication Response data by the card issuer. maxLength: 20000 type: string authorization_token: type: string billingToken: description: PayPal-generated token for recurring payments. type: string cupsecureplus.smscode: description: The SMS verification code collected from the shopper. type: string facilitatorAccessToken: description: PayPal-generated third party access token. type: string oneTimePasscode: description: A random number sent to the mobile phone number of the shopper to verify the payment. type: string orderID: description: PayPal-assigned ID for the order. type: string payerID: description: PayPal-assigned ID for the payer (shopper). type: string payload: description: Payload appended to the `returnURL` as a result of the redirect. maxLength: 20000 type: string paymentID: description: PayPal-generated ID for the payment. type: string paymentStatus: description: 'Value passed from the WeChat MiniProgram `wx.requestPayment` **complete** callback. Possible values: any value starting with `requestPayment:`.' type: string redirectResult: description: The result of the redirect as appended to the `returnURL`. maxLength: 20000 type: string resultCode: description: Value you received from the WeChat Pay SDK. type: string threeDSResult: description: 'Base64-encoded string returned by the Component after the challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`.' maxLength: 50000 type: string threeds2.challengeResult: description: 'Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `transStatus`.' maxLength: 50000 type: string threeds2.fingerprint: description: 'Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `threeDSCompInd`.' maxLength: 100000 type: string vaultToken: description: PayPalv2-generated token for recurring payments. type: string type: object PaymentDetails: additionalProperties: false properties: type: description: The payment method type. enum: - alipay - multibanco - bankTransfer_IBAN - paybright - paynow - affirm - affirm_pos - trustly - trustlyvector - oney - facilypay - facilypay_3x - facilypay_4x - facilypay_6x - facilypay_10x - facilypay_12x - unionpay - kcp_banktransfer - kcp_payco - kcp_creditcard - wechatpaySDK - wechatpayQR - wechatpayWeb - molpay_boost - wallet_IN - payu_IN_cashcard - payu_IN_nb - upi_qr - paytm - molpay_ebanking_VN - paybybank - ebanking_FI - molpay_ebanking_MY - molpay_ebanking_direct_MY - swish - pix - walley - walley_b2b - alma - paypo - molpay_fpx - konbini - directEbanking - boletobancario - neteller - paysafecard - cashticket - ikano - karenmillen - oasis - warehouse - primeiropay_boleto - mada - benefit - knet - omannet - gopay_wallet - kcp_naverpay - onlinebanking_IN - fawry - atome - moneybookers - naps - nordea - boletobancario_bradesco - boletobancario_itau - boletobancario_santander - boletobancario_bancodobrasil - boletobancario_hsbc - molpay_maybank2u - molpay_cimb - molpay_rhb - molpay_amb - molpay_hlb - molpay_affin_epg - molpay_bankislam - molpay_publicbank - fpx_agrobank - touchngo - maybank2u_mae - duitnow - promptpay - twint_pos - alipay_hk - alipay_hk_web - alipay_hk_wap - alipay_wap - balanceplatform type: string title: Payment Details type: object PaymentDetailsRequest: additionalProperties: false properties: details: description: Use this collection to submit the details that were returned as a result of the `/payments` call. $ref: '#/components/schemas/PaymentCompletionDetails' paymentData: description: 'The `paymentData` value from the `/payments` response. Required if the `/payments` response contained `paymentData`. ' maxLength: 200000 type: string required: - details type: object PaymentDetailsResponse: additionalProperties: false properties: additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - $ref: '#/components/schemas/ResponseAdditionalDataDomesticError' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' - $ref: '#/components/schemas/ResponseAdditionalDataSepa' description: 'Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Developers** > **Additional data**.' type: object authResponse: description: The authorisation code representing the authentication result. type: string details: description: When non-empty, contains all the fields that you must submit to the `/payments/details` endpoint. items: $ref: '#/components/schemas/InputDetail' type: array fraudResult: description: The fraud result properties of the payment. $ref: '#/components/schemas/FraudResult' merchantReference: x-addedInVersion: '49' description: The reference used during the /payments request. type: string order: description: Contains updated information regarding the order in case order information was provided in the request. $ref: '#/components/schemas/CheckoutOrderResponse' outputDetails: additionalProperties: type: string description: Contains the details that will be presented to the shopper. type: object paymentData: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string pspReference: description: Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. type: string redirect: description: When the payment flow requires a redirect, this object contains information about the redirect URL. $ref: '#/components/schemas/Redirect' refusalReason: description: 'If the payment''s authorisation is refused or an error occurs during authorisation, this field holds Adyen''s mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' type: string refusalReasonCode: x-addedInVersion: '37' description: Code that specifies the refusal reason. For more information, see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). type: string resultCode: description: "The result of the payment. For more information, see [Result\ \ codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\ \nPossible values:\n\n* **AuthenticationFinished** \u2013 The payment\ \ has been successfully authenticated with 3D Secure 2. Returned for 3D\ \ Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired**\ \ \u2013 The transaction does not require 3D Secure authentication. Returned\ \ for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n\ * **Authorised** \u2013 The payment was successfully authorised. This\ \ state serves as an indicator to proceed with the delivery of goods and\ \ services. This is a final state.\n* **Cancelled** \u2013 Indicates the\ \ payment has been cancelled (either by the shopper or the merchant) before\ \ processing was completed. This is a final state.\n* **ChallengeShopper**\ \ \u2013 The issuer requires further shopper interaction before the payment\ \ can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error**\ \ \u2013 There was an error when the payment was being processed. The\ \ reason is given in the `refusalReason` field. This is a final state.\n\ * **IdentifyShopper** \u2013 The issuer requires the shopper's device\ \ fingerprint before the payment can be authenticated. Returned for 3D\ \ Secure 2 transactions.\n* **PartiallyAuthorised** \u2013 The payment\ \ has been authorised for a partial amount.\nThis happens for card payments\ \ when the merchant supports Partial Authorisations and the cardholder\ \ has insufficient funds.\n* **Pending** \u2013 Indicates that it is not\ \ possible to obtain the final status of the payment. This can happen\ \ if the systems providing final status information for the payment are\ \ unavailable, or if the shopper needs to take further action to complete\ \ the payment.\n* **PresentToShopper** \u2013 Indicates that the response\ \ contains additional information that you need to present to a shopper,\ \ so that they can use it to complete a payment.\n* **Received** \u2013\ \ Indicates the payment has successfully been received by Adyen, and will\ \ be processed. This is the initial state for all payments.\n* **RedirectShopper**\ \ \u2013 Indicates the shopper should be redirected to an external web\ \ page or app to complete the authorisation.\n* **Refused** \u2013 Indicates\ \ the payment was refused. The reason is given in the `refusalReason`\ \ field. This is a final state." enum: - AuthenticationFinished - AuthenticationNotRequired - Authorised - Cancelled - ChallengeShopper - Error - IdentifyShopper - PartiallyAuthorised - Pending - PresentToShopper - Received - RedirectShopper - Refused - Success type: string shopperLocale: description: The shopperLocale. type: string type: object PaymentLinkRequest: additionalProperties: false properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"allowedPaymentMethods":["ideal","giropay"]`' items: type: string type: array amount: description: The payment amount and currency. $ref: '#/components/schemas/Amount' applicationInfo: description: Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). $ref: '#/components/schemas/ApplicationInfo' billingAddress: description: The address where to send the invoice. $ref: '#/components/schemas/Address' blockedPaymentMethods: description: 'List of payment methods to be hidden from the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"blockedPaymentMethods":["ideal","giropay"]`' items: type: string type: array countryCode: description: The shopper's two-letter country code. maxLength: 100 type: string deliverAt: description: 'The date and time when the purchased goods should be delivered. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: description: The address where the purchased goods should be delivered. $ref: '#/components/schemas/Address' description: description: 'A short description visible on the payment page. Maximum length: 280 characters.' type: string expiresAt: description: 'The date when the payment link expires. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format with time zone designator **Z**: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30Z**. The maximum expiry date is 70 days after the payment link is created. If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: $ref: '#/components/schemas/InstallmentOption' description: A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options. type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. This parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.' items: $ref: '#/components/schemas/LineItem' type: array manualCapture: description: Indicates if the payment must be [captured manually](https://docs.adyen.com/online-payments/capture). type: boolean merchantAccount: description: The merchant account identifier for which the payment link is created. type: string merchantOrderReference: description: This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. maxLength: 1000 type: string metadata: additionalProperties: type: string description: 'Metadata consists of entries, each of which includes a key and a value. Limitations: * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: "Metadata size exceeds limit" * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata key size exceeds limit" * A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.' maxLength: 80 type: object recurringProcessingModel: description: "Defines a recurring payment type. Required when `storePaymentMethodMode`\ \ is set to **askForConsent** or **enabled**.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ \ certain amount.\n" enum: - CardOnFile - Subscription - UnscheduledCardOnFile maxLength: 50 type: string reference: description: A reference that is used to uniquely identify the payment in future communications about the payment status. type: string returnUrl: description: 'Website URL used for redirection after payment is completed. If provided, a **Continue** button will be shown on the payment page. If shoppers select the button, they are redirected to the specified URL.' maxLength: 8000 type: string reusable: description: Indicates whether the payment link can be reused for multiple payments. If not provided, this defaults to **false** which means the link can be used for one successful payment only. type: boolean shopperEmail: description: The shopper's email address. maxLength: 500 type: string shopperLocale: description: 'The language to be used in the payment page, specified by a combination of a language and country code. For example, `en-US`. For a list of shopper locales that Pay by Link supports, refer to [Language and localization](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#language).' maxLength: 32 type: string shopperName: description: The shopper's full name. This object is required for some payment methods such as AfterPay, Klarna, or if you're enrolled in the PayPal Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: description: 'Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address.' maxLength: 256 minLength: 3 type: string showRemovePaymentMethodButton: default: true description: Set to **false** to hide the button that lets the shopper remove a stored payment method. type: boolean splits: description: An array of objects specifying how to split a payment when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information), [Classic Platforms integration](https://docs.adyen.com/classic-platforms/processing-payments#providing-split-information), or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). items: $ref: '#/components/schemas/Split' type: array store: description: The physical store, for which this payment is processed. type: string required: - amount - reference - merchantAccount type: object PaymentLinkResponse: additionalProperties: false properties: allowedPaymentMethods: description: 'List of payment methods to be presented to the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"allowedPaymentMethods":["ideal","giropay"]`' items: type: string type: array amount: description: The payment amount and currency. $ref: '#/components/schemas/Amount' applicationInfo: description: Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). $ref: '#/components/schemas/ApplicationInfo' billingAddress: description: The address where to send the invoice. $ref: '#/components/schemas/Address' blockedPaymentMethods: description: 'List of payment methods to be hidden from the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"blockedPaymentMethods":["ideal","giropay"]`' items: type: string type: array countryCode: description: The shopper's two-letter country code. maxLength: 100 type: string deliverAt: description: 'The date and time when the purchased goods should be delivered. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string deliveryAddress: description: The address where the purchased goods should be delivered. $ref: '#/components/schemas/Address' description: description: 'A short description visible on the payment page. Maximum length: 280 characters.' type: string expiresAt: description: 'The date when the payment link expires. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format with time zone designator **Z**: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30Z**. The maximum expiry date is 70 days after the payment link is created. If not provided, the payment link expires 24 hours after it was created.' type: string installmentOptions: additionalProperties: $ref: '#/components/schemas/InstallmentOption' description: A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options. type: object lineItems: description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. This parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip.' items: $ref: '#/components/schemas/LineItem' type: array manualCapture: description: Indicates if the payment must be [captured manually](https://docs.adyen.com/online-payments/capture). type: boolean merchantAccount: description: The merchant account identifier for which the payment link is created. type: string merchantOrderReference: description: This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. maxLength: 1000 type: string metadata: additionalProperties: type: string description: 'Metadata consists of entries, each of which includes a key and a value. Limitations: * Maximum 20 key-value pairs per request. Otherwise, error "177" occurs: "Metadata size exceeds limit" * Maximum 20 characters per key. Otherwise, error "178" occurs: "Metadata key size exceeds limit" * A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID.' maxLength: 80 type: object recurringProcessingModel: description: "Defines a recurring payment type. Required when `storePaymentMethodMode`\ \ is set to **askForConsent** or **enabled**.\nPossible values:\n* **Subscription**\ \ \u2013 A transaction for a fixed or variable amount, which follows a\ \ fixed schedule.\n* **CardOnFile** \u2013 With a card-on-file (CoF) transaction,\ \ card details are stored to enable one-click or omnichannel journeys,\ \ or simply to streamline the checkout process. Any subscription not following\ \ a fixed schedule is also considered a card-on-file transaction.\n* **UnscheduledCardOnFile**\ \ \u2013 An unscheduled card-on-file (UCoF) transaction is a transaction\ \ that occurs on a non-fixed schedule and/or has variable amounts. For\ \ example, automatic top-ups when a cardholder's balance drops below a\ \ certain amount.\n" enum: - CardOnFile - Subscription - UnscheduledCardOnFile maxLength: 50 type: string reference: description: A reference that is used to uniquely identify the payment in future communications about the payment status. type: string returnUrl: description: 'Website URL used for redirection after payment is completed. If provided, a **Continue** button will be shown on the payment page. If shoppers select the button, they are redirected to the specified URL.' maxLength: 8000 type: string reusable: description: Indicates whether the payment link can be reused for multiple payments. If not provided, this defaults to **false** which means the link can be used for one successful payment only. type: boolean shopperEmail: description: The shopper's email address. maxLength: 500 type: string shopperLocale: description: 'The language to be used in the payment page, specified by a combination of a language and country code. For example, `en-US`. For a list of shopper locales that Pay by Link supports, refer to [Language and localization](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#language).' maxLength: 32 type: string shopperName: description: The shopper's full name. This object is required for some payment methods such as AfterPay, Klarna, or if you're enrolled in the PayPal Seller Protection program. $ref: '#/components/schemas/Name' shopperReference: description: 'Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address.' maxLength: 256 minLength: 3 type: string showRemovePaymentMethodButton: default: true description: Set to **false** to hide the button that lets the shopper remove a stored payment method. type: boolean splits: description: An array of objects specifying how to split a payment when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information), [Classic Platforms integration](https://docs.adyen.com/classic-platforms/processing-payments#providing-split-information), or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). items: $ref: '#/components/schemas/Split' type: array status: description: 'Status of the payment link. Possible values: * **active**: The link can be used to make payments. * **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments. * **paid**: The shopper completed the payment.' enum: - active - completed - expired - paid - paymentPending type: string store: description: The physical store, for which this payment is processed. type: string updatedAt: description: 'The date when the payment link status was updated. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**.' format: date-time type: string url: description: The URL at which the shopper can complete the payment. readOnly: true type: string required: - amount - reference - merchantAccount - url - status type: object PaymentMethod: additionalProperties: false properties: configuration: additionalProperties: type: string description: The configuration of the payment method. type: object details: description: All input details to be provided to complete the payment with this payment method. items: $ref: '#/components/schemas/InputDetail' type: array group: description: The group where this payment method belongs to. $ref: '#/components/schemas/PaymentMethodGroup' inputDetails: deprecated: true description: All input details to be provided to complete the payment with this payment method. items: $ref: '#/components/schemas/InputDetail' type: array name: description: The displayable name of this payment method. type: string supportsRecurring: description: Indicates whether this payment method supports tokenization or not. type: boolean type: description: The unique payment method code. type: string type: object PaymentMethodGroup: additionalProperties: false properties: name: description: The name of the group. type: string paymentMethodData: description: Echo data to be used if the payment method is displayed as part of this group. type: string type: description: The unique code of the group. type: string type: object PaymentMethodToStore: additionalProperties: false properties: brand: description: 'Secondary brand of the card. For example: **plastix**, **hmclub**.' type: string cvc: description: The card verification code. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string encryptedCardNumber: description: The encrypted card number. maxLength: 15000 type: string encryptedExpiryMonth: description: The encrypted card expiry month. maxLength: 15000 type: string encryptedExpiryYear: description: The encrypted card expiry year. maxLength: 15000 type: string encryptedSecurityCode: description: The encrypted card verification code. maxLength: 15000 type: string expiryMonth: description: The card expiry month. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string expiryYear: description: The card expiry year. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string holderName: description: The name of the card holder. type: string number: description: The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). type: string type: object PaymentMethodsGroup: additionalProperties: false properties: groupType: description: The type to submit for any payment method in this group. type: string name: description: The human-readable name of this group. type: string types: description: The types of payment methods that belong in this group. items: type: string type: array type: object PaymentMethodsRequest: additionalProperties: false properties: additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/AdditionalData3DSecure' - $ref: '#/components/schemas/AdditionalDataAirline' - $ref: '#/components/schemas/AdditionalDataCarRental' - $ref: '#/components/schemas/AdditionalDataCommon' - $ref: '#/components/schemas/AdditionalDataLevel23' - $ref: '#/components/schemas/AdditionalDataLodging' - $ref: '#/components/schemas/AdditionalDataOpenInvoice' - $ref: '#/components/schemas/AdditionalDataOpi' - $ref: '#/components/schemas/AdditionalDataRatepay' - $ref: '#/components/schemas/AdditionalDataRetry' - $ref: '#/components/schemas/AdditionalDataRisk' - $ref: '#/components/schemas/AdditionalDataRiskStandalone' - $ref: '#/components/schemas/AdditionalDataSubMerchant' - $ref: '#/components/schemas/AdditionalDataTemporaryServices' - $ref: '#/components/schemas/AdditionalDataWallets' description: 'This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.' type: object allowedPaymentMethods: x-addedInVersion: '33' description: 'List of payment methods to be presented to the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"allowedPaymentMethods":["ideal","giropay"]`' items: type: string type: array amount: description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero). $ref: '#/components/schemas/Amount' blockedPaymentMethods: x-addedInVersion: '33' description: 'List of payment methods to be hidden from the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"blockedPaymentMethods":["ideal","giropay"]`' items: type: string type: array channel: description: 'The platform where a payment transaction takes place. This field can be used for filtering out payment methods that are only available on specific platforms. Possible values: * iOS * Android * Web' enum: - iOS - Android - Web type: string countryCode: description: The shopper's country code. type: string merchantAccount: description: The merchant account identifier, with which you want to process the transaction. type: string shopperLocale: x-addedInVersion: '7' description: The combination of a language code and a country code to specify the language to be used in the payment. type: string shopperReference: description: "Required for recurring payments. \nYour reference to uniquely\ \ identify this shopper, for example user ID or account ID. Minimum length:\ \ 3 characters.\n> Your reference must not include personally identifiable\ \ information (PII), for example name or email address." type: string store: x-addedInVersion: '23' description: Required for Adyen for Platforms integrations if you are a platform model. This is your [reference](https://docs.adyen.com/api-explorer/Management/3/post/merchants/(merchantId)/stores#request-reference) (on [balance platform](https://docs.adyen.com/platforms)) or the [storeReference](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccountHolder#request-accountHolderDetails-storeDetails-storeReference) (in the [classic integration](https://docs.adyen.com/classic-platforms/processing-payments/route-payment-to-store/#route-a-payment-to-a-store)) for the ecommerce or point-of-sale store that is processing the payment. maxLength: 16 minLength: 1 type: string storeFiltrationMode: description: "Specifies how payment methods should be filtered based on\ \ the 'store' parameter:\n - 'exclusive': Only payment methods belonging\ \ to the specified 'store' are returned.\n - 'inclusive': Payment methods\ \ from the 'store' and those not associated with any other store are returned.\n\ \ - 'skipFilter': All payment methods are returned, regardless of store\ \ association." enum: - exclusive - inclusive - skipFilter type: string required: - merchantAccount type: object PaymentMethodsResponse: additionalProperties: false properties: groups: description: Groups of payment methods. items: $ref: '#/components/schemas/PaymentMethodsGroup' type: array oneClickPaymentMethods: description: Detailed list of one-click payment methods. items: $ref: '#/components/schemas/RecurringDetail' type: array paymentMethods: description: Detailed list of payment methods required to generate payment forms. items: $ref: '#/components/schemas/PaymentMethod' type: array type: object PaymentRefundRequest: additionalProperties: false properties: amount: description: The amount that you want to refund. The `currency` must match the currency used in authorisation, the `value` must be smaller than or equal to the authorised amount. $ref: '#/components/schemas/Amount' applicationInfo: description: Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). $ref: '#/components/schemas/ApplicationInfo' lineItems: description: 'Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). > This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Atome, Clearpay, Klarna, Ratepay, and Zip.' items: $ref: '#/components/schemas/LineItem' type: array merchantAccount: description: The merchant account that is used to process the payment. type: string merchantRefundReason: description: Your reason for the refund request enum: - FRAUD - CUSTOMER REQUEST - RETURN - DUPLICATE - OTHER nullable: true type: string reference: description: 'Your reference for the refund request. Maximum length: 80 characters.' type: string splits: description: An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For more information, see how to process payments for [marketplaces](https://docs.adyen.com/marketplaces/split-payments) or [platforms](https://docs.adyen.com/platforms/online-payments/split-payments/). items: $ref: '#/components/schemas/Split' type: array store: description: The online store or [physical store](https://docs.adyen.com/point-of-sale/design-your-integration/determine-account-structure/#create-stores) that is processing the refund. This must be the same as the store name configured in your Customer Area. Otherwise, you get an error and the refund fails. type: string required: - merchantAccount - amount type: object PaymentRefundResponse: additionalProperties: false properties: amount: description: The refund amount. $ref: '#/components/schemas/Amount' lineItems: description: 'Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). > This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Atome, Clearpay, Klarna, Ratepay, and Zip.' items: $ref: '#/components/schemas/LineItem' type: array merchantAccount: description: The merchant account that is used to process the payment. type: string merchantRefundReason: description: Your reason for the refund request. enum: - FRAUD - CUSTOMER REQUEST - RETURN - DUPLICATE - OTHER nullable: true type: string paymentPspReference: description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to refund. ' type: string pspReference: description: Adyen's 16-character reference associated with the refund request. type: string reference: description: Your reference for the refund request. type: string splits: description: An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For more information, see how to process payments for [marketplaces](https://docs.adyen.com/marketplaces/split-payments) or [platforms](https://docs.adyen.com/platforms/online-payments/split-payments/). items: $ref: '#/components/schemas/Split' type: array status: description: The status of your request. This will always have the value **received**. enum: - received type: string store: description: The online store or [physical store](https://docs.adyen.com/point-of-sale/design-your-integration/determine-account-structure/#create-stores) that is processing the refund. This must be the same as the store name configured in your Customer Area. Otherwise, you get an error and the refund fails. type: string required: - status - merchantAccount - amount - pspReference - paymentPspReference type: object PaymentRequest: additionalProperties: false properties: additionalAmount: description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) request to use a non-zero value, assign this value to `additionalAmount` (while the amount must be still set to 0 to trigger BIN or card verification). Required to be in the same currency as the `amount`. ' $ref: '#/components/schemas/Amount' additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/AdditionalData3DSecure' - $ref: '#/components/schemas/AdditionalDataAirline' - $ref: '#/components/schemas/AdditionalDataCarRental' - $ref: '#/components/schemas/AdditionalDataCommon' - $ref: '#/components/schemas/AdditionalDataLevel23' - $ref: '#/components/schemas/AdditionalDataLodging' - $ref: '#/components/schemas/AdditionalDataOpenInvoice' - $ref: '#/components/schemas/AdditionalDataOpi' - $ref: '#/components/schemas/AdditionalDataRatepay' - $ref: '#/components/schemas/AdditionalDataRetry' - $ref: '#/components/schemas/AdditionalDataRisk' - $ref: '#/components/schemas/AdditionalDataRiskStandalone' - $ref: '#/components/schemas/AdditionalDataSubMerchant' - $ref: '#/components/schemas/AdditionalDataTemporaryServices' - $ref: '#/components/schemas/AdditionalDataWallets' description: 'This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.' type: object amount: description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero). $ref: '#/components/schemas/Amount' billingAddress: description: 'The address where to send the invoice. > The `billingAddress` object is required in the following scenarios. Include all of the fields within this object. >* For 3D Secure 2 transactions in all browser-based and mobile implementations. >* For cross-border payouts to and from Canada.' $ref: '#/components/schemas/BillingAddress' browserInfo: description: 'The shopper''s browser information. > For 3D Secure, the full object is required for web integrations. For mobile app integrations, include the `userAgent` and `acceptHeader` fields to indicate that your integration can support a redirect in case a payment is routed to 3D Secure 1.' $ref: '#/components/schemas/BrowserInfo' captureDelayHours: description: The delay between the authorisation and scheduled auto-capture, specified in hours. format: int32 type: integer channel: description: 'The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web' enum: - iOS - Android - Web type: string company: x-addedInVersion: '32' description: Information regarding the company. $ref: '#/components/schemas/Company' countryCode: description: 'The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE' maxLength: 100 type: string dateOfBirth: description: 'The shopper''s date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' format: date-time type: string dccQuote: description: The forex quote as returned in the response of the forex service. $ref: '#/components/schemas/ForexQuote' deliveryAddress: description: The address where the purchased goods should be delivered. $ref: '#/components/schemas/DeliveryAddress' deliveryDate: description: 'The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00' format: date-time type: string deviceFingerprint: description: A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). maxLength: 5000 type: string enableOneClick: x-addedInVersion: '32' description: When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments. type: boolean enablePayOut: x-addedInVersion: '32' description: When true and `shopperReference` is provided, the payment details will be tokenized for payouts. type: boolean enableRecurring: x-addedInVersion: '32' description: When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments. type: boolean entityType: description: The type of the entity the payment is processed for. enum: - NaturalPerson - CompanyName type: string fraudOffset: description: An integer value that is added to the normal fraud score. The value can be either positive or negative. format: int32 type: integer fundOrigin: description: The person or entity funding the money. $ref: '#/components/schemas/FundOrigin' fundRecipient: description: the person or entity receiving the money $ref: '#/components/schemas/FundRecipient' installments: description: Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). $ref: '#/components/schemas/Installments' lineItems: x-addedInVersion: '32' description: 'Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, and Zip.' items: $ref: '#/components/schemas/LineItem' type: array mandate: description: The mandate details to initiate recurring transaction. $ref: '#/components/schemas/Mandate' mcc: description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. type: string merchantAccount: description: The merchant account identifier, with which you want to process the transaction. type: string merchantOrderReference: description: 'This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' maxLength: 1000 type: string metadata: additionalProperties: type: string description: 'Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the "177" error occurs: "Metadata size exceeds limit". * Maximum 20 characters per key. * Maximum 80 characters per value. ' type: object mpiData: description: Authentication data produced by an MPI (Mastercard SecureCode, Visa Secure, or Cartes Bancaires). $ref: '#/components/schemas/ThreeDSecureData' order: description: The order information required for partial payments. $ref: '#/components/schemas/EncryptedOrderData' orderReference: description: When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead. type: string paymentMethod: description: The type and required details of a payment method to use. oneOf: - $ref: '#/components/schemas/AchDetails' - $ref: '#/components/schemas/AfterpayDetails' - $ref: '#/components/schemas/AmazonPayDetails' - $ref: '#/components/schemas/AncvDetails' - $ref: '#/components/schemas/AndroidPayDetails' - $ref: '#/components/schemas/ApplePayDetails' - $ref: '#/components/schemas/BacsDirectDebitDetails' - $ref: '#/components/schemas/BillDeskDetails' - $ref: '#/components/schemas/BlikDetails' - $ref: '#/components/schemas/CardDetails' - $ref: '#/components/schemas/CashAppDetails' - $ref: '#/components/schemas/CellulantDetails' - $ref: '#/components/schemas/DokuDetails' - $ref: '#/components/schemas/DotpayDetails' - $ref: '#/components/schemas/DragonpayDetails' - $ref: '#/components/schemas/EcontextVoucherDetails' - $ref: '#/components/schemas/GenericIssuerPaymentMethodDetails' - $ref: '#/components/schemas/GiropayDetails' - $ref: '#/components/schemas/GooglePayDetails' - $ref: '#/components/schemas/IdealDetails' - $ref: '#/components/schemas/KlarnaDetails' - $ref: '#/components/schemas/MasterpassDetails' - $ref: '#/components/schemas/MbwayDetails' - $ref: '#/components/schemas/MobilePayDetails' - $ref: '#/components/schemas/MolPayDetails' - $ref: '#/components/schemas/OpenInvoiceDetails' - $ref: '#/components/schemas/PayPalDetails' - $ref: '#/components/schemas/PayUUpiDetails' - $ref: '#/components/schemas/PayWithGoogleDetails' - $ref: '#/components/schemas/PaymentDetails' - $ref: '#/components/schemas/RatepayDetails' - $ref: '#/components/schemas/SamsungPayDetails' - $ref: '#/components/schemas/SepaDirectDebitDetails' - $ref: '#/components/schemas/StoredPaymentMethodDetails' - $ref: '#/components/schemas/UpiCollectDetails' - $ref: '#/components/schemas/UpiIntentDetails' - $ref: '#/components/schemas/VippsDetails' - $ref: '#/components/schemas/VisaCheckoutDetails' - $ref: '#/components/schemas/WeChatPayDetails' - $ref: '#/components/schemas/WeChatPayMiniProgramDetails' - $ref: '#/components/schemas/ZipDetails' recurringExpiry: description: Date after which no further authorisations shall be performed. Only for 3D Secure 2. type: string recurringFrequency: description: Minimum number of days between authorisations. Only for 3D Secure 2. type: string recurringProcessingModel: x-addedInVersion: '30' description: "Defines a recurring payment type. Required when creating a\ \ token to store payment details or using stored payment details.\nAllowed\ \ values:\n* `Subscription` \u2013 A transaction for a fixed or variable\ \ amount, which follows a fixed schedule.\n* `CardOnFile` \u2013 With\ \ a card-on-file (CoF) transaction, card details are stored to enable\ \ one-click or omnichannel journeys, or simply to streamline the checkout\ \ process. Any subscription not following a fixed schedule is also considered\ \ a card-on-file transaction.\n* `UnscheduledCardOnFile` \u2013 An unscheduled\ \ card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed\ \ schedule and/or have variable amounts. For example, automatic top-ups\ \ when a cardholder's balance drops below a certain amount.\n" enum: - CardOnFile - Subscription - UnscheduledCardOnFile type: string redirectFromIssuerMethod: x-addedInVersion: '32' description: Specifies the redirect method (GET or POST) when redirecting back from the issuer. type: string redirectToIssuerMethod: x-addedInVersion: '32' description: Specifies the redirect method (GET or POST) when redirecting to the issuer. type: string reference: description: 'The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens ("-"). Maximum length: 80 characters.' type: string returnUrl: description: "The URL to return to in case of a redirection.\nThe format\ \ depends on the channel. \n* For web, include the protocol `http://`\ \ or `https://`. You can also include your own additional query parameters,\ \ for example, shopper ID or order reference number.\nExample: `https://your-company.com/checkout?shopperOrder=12xy`\n\ * For iOS, use the custom URL for your app. To know more about setting\ \ custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app).\n\ Example: `my-app://`\n* For Android, use a custom URL handled by an Activity\ \ on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters).\n\ Example: `my-app://your.package.name`" type: string riskData: description: Contains risk data, such as client-side data, used to identify risk for a transaction. $ref: '#/components/schemas/RiskData' sessionValidity: description: 'The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00' type: string shopperEmail: description: 'The shopper''s email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.' type: string shopperIP: description: 'The shopper''s IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).' maxLength: 1000 type: string shopperInteraction: description: 'Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.' enum: - Ecommerce - ContAuth - Moto - POS type: string shopperLocale: description: The combination of a language code and a country code to specify the language to be used in the payment. type: string shopperName: description: The shopper's full name. $ref: '#/components/schemas/Name' shopperReference: description: "Required for recurring payments. \nYour reference to uniquely\ \ identify this shopper, for example user ID or account ID. Minimum length:\ \ 3 characters.\n> Your reference must not include personally identifiable\ \ information (PII), for example name or email address." maxLength: 256 minLength: 3 type: string shopperStatement: description: "The text to be shown on the shopper's bank statement.\n We\ \ recommend sending a maximum of 22 characters, otherwise banks might\ \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ \ spaces, and special characters **. , ' _ - ? + * /**." maxLength: 10000 type: string socialSecurityNumber: description: The shopper's social security number. type: string splits: x-addedInVersion: '37' description: An array of objects specifying how to split a payment when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information), [Classic Platforms integration](https://docs.adyen.com/classic-platforms/processing-payments#providing-split-information), or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). items: $ref: '#/components/schemas/Split' type: array store: description: Required for Adyen for Platforms integrations if you are a platform model. This is your [reference](https://docs.adyen.com/api-explorer/Management/3/post/merchants/(merchantId)/stores#request-reference) (on [balance platform](https://docs.adyen.com/platforms)) or the [storeReference](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccountHolder#request-accountHolderDetails-storeDetails-storeReference) (in the [classic integration](https://docs.adyen.com/classic-platforms/processing-payments/route-payment-to-store/#route-a-payment-to-a-store)) for the ecommerce or point-of-sale store that is processing the payment. maxLength: 64 minLength: 1 type: string telephoneNumber: description: The shopper's telephone number. type: string trustedShopper: x-addedInVersion: '37' description: Set to true if the payment should be routed to a trusted MID. type: boolean required: - merchantAccount - reference - amount - paymentMethod - returnUrl type: object PaymentResponse: additionalProperties: false properties: additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - $ref: '#/components/schemas/ResponseAdditionalDataDomesticError' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' - $ref: '#/components/schemas/ResponseAdditionalDataSepa' description: 'Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Developers** > **Additional data**.' type: object details: description: When non-empty, contains all the fields that you must submit to the `/payments/details` endpoint. items: $ref: '#/components/schemas/InputDetail' type: array fraudResult: description: The fraud result properties of the payment. $ref: '#/components/schemas/FraudResult' order: description: Contains updated information regarding the order in case order information was provided in the request. $ref: '#/components/schemas/CheckoutOrderResponse' outputDetails: additionalProperties: type: string description: Contains the details that will be presented to the shopper. type: object paymentData: description: When non-empty, contains a value that you must submit to the `/payments/details` endpoint. type: string pspReference: description: 'Adyen''s 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. > For payment methods that require a redirect or additional action, you will get this value in the `/payments/details` response.' type: string redirect: description: When the payment flow requires a redirect, this object contains information about the redirect URL. $ref: '#/components/schemas/Redirect' refusalReason: description: 'If the payment''s authorisation is refused or an error occurs during authorisation, this field holds Adyen''s mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' type: string refusalReasonCode: x-addedInVersion: '37' description: Code that specifies the refusal reason. For more information, see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). type: string resultCode: description: "The result of the payment. For more information, see [Result\ \ codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\ \nPossible values:\n\n* **AuthenticationFinished** \u2013 The payment\ \ has been successfully authenticated with 3D Secure 2. Returned for 3D\ \ Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired**\ \ \u2013 The transaction does not require 3D Secure authentication. Returned\ \ for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n\ * **Authorised** \u2013 The payment was successfully authorised. This\ \ state serves as an indicator to proceed with the delivery of goods and\ \ services. This is a final state.\n* **Cancelled** \u2013 Indicates the\ \ payment has been cancelled (either by the shopper or the merchant) before\ \ processing was completed. This is a final state.\n* **ChallengeShopper**\ \ \u2013 The issuer requires further shopper interaction before the payment\ \ can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error**\ \ \u2013 There was an error when the payment was being processed. The\ \ reason is given in the `refusalReason` field. This is a final state.\n\ * **IdentifyShopper** \u2013 The issuer requires the shopper's device\ \ fingerprint before the payment can be authenticated. Returned for 3D\ \ Secure 2 transactions.\n* **PartiallyAuthorised** \u2013 The payment\ \ has been authorised for a partial amount.\nThis happens for card payments\ \ when the merchant supports Partial Authorisations and the cardholder\ \ has insufficient funds.\n* **Pending** \u2013 Indicates that it is not\ \ possible to obtain the final status of the payment. This can happen\ \ if the systems providing final status information for the payment are\ \ unavailable, or if the shopper needs to take further action to complete\ \ the payment.\n* **PresentToShopper** \u2013 Indicates that the response\ \ contains additional information that you need to present to a shopper,\ \ so that they can use it to complete a payment.\n* **Received** \u2013\ \ Indicates the payment has successfully been received by Adyen, and will\ \ be processed. This is the initial state for all payments.\n* **RedirectShopper**\ \ \u2013 Indicates the shopper should be redirected to an external web\ \ page or app to complete the authorisation.\n* **Refused** \u2013 Indicates\ \ the payment was refused. The reason is given in the `refusalReason`\ \ field. This is a final state." enum: - AuthenticationFinished - AuthenticationNotRequired - Authorised - Cancelled - ChallengeShopper - Error - IdentifyShopper - PartiallyAuthorised - Pending - PresentToShopper - Received - RedirectShopper - Refused - Success type: string type: object PaymentReversalRequest: additionalProperties: false properties: applicationInfo: description: Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). $ref: '#/components/schemas/ApplicationInfo' merchantAccount: description: The merchant account that is used to process the payment. type: string reference: description: 'Your reference for the reversal request. Maximum length: 80 characters.' type: string required: - merchantAccount type: object PaymentReversalResponse: additionalProperties: false properties: merchantAccount: description: The merchant account that is used to process the payment. type: string paymentPspReference: description: 'The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to reverse. ' type: string pspReference: description: Adyen's 16-character reference associated with the reversal request. type: string reference: description: Your reference for the reversal request. type: string status: description: The status of your request. This will always have the value **received**. enum: - received type: string required: - status - merchantAccount - pspReference - paymentPspReference type: object PaymentSetupRequest: additionalProperties: false properties: additionalAmount: description: 'If you want a [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) request to use a non-zero value, assign this value to `additionalAmount` (while the amount must be still set to 0 to trigger BIN or card verification). Required to be in the same currency as the `amount`. ' $ref: '#/components/schemas/Amount' additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/AdditionalData3DSecure' - $ref: '#/components/schemas/AdditionalDataAirline' - $ref: '#/components/schemas/AdditionalDataCarRental' - $ref: '#/components/schemas/AdditionalDataCommon' - $ref: '#/components/schemas/AdditionalDataLevel23' - $ref: '#/components/schemas/AdditionalDataLodging' - $ref: '#/components/schemas/AdditionalDataOpenInvoice' - $ref: '#/components/schemas/AdditionalDataOpi' - $ref: '#/components/schemas/AdditionalDataRatepay' - $ref: '#/components/schemas/AdditionalDataRetry' - $ref: '#/components/schemas/AdditionalDataRisk' - $ref: '#/components/schemas/AdditionalDataRiskStandalone' - $ref: '#/components/schemas/AdditionalDataSubMerchant' - $ref: '#/components/schemas/AdditionalDataTemporaryServices' - $ref: '#/components/schemas/AdditionalDataWallets' description: 'This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value.' type: object allowedPaymentMethods: x-addedInVersion: '33' description: 'List of payment methods to be presented to the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"allowedPaymentMethods":["ideal","giropay"]`' items: type: string type: array amount: description: The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero). $ref: '#/components/schemas/Amount' billingAddress: x-addedInVersion: '4' description: 'The address where to send the invoice. > The `billingAddress` object is required in the following scenarios. Include all of the fields within this object. >* For 3D Secure 2 transactions in all browser-based and mobile implementations. >* For cross-border payouts to and from Canada.' $ref: '#/components/schemas/Address' blockedPaymentMethods: x-addedInVersion: '33' description: 'List of payment methods to be hidden from the shopper. To refer to payment methods, use their [payment method type](https://docs.adyen.com/payment-methods/payment-method-types). Example: `"blockedPaymentMethods":["ideal","giropay"]`' items: type: string type: array captureDelayHours: x-addedInVersion: '2' description: The delay between the authorisation and scheduled auto-capture, specified in hours. format: int32 type: integer channel: description: 'The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web' enum: - iOS - Android - Web type: string company: x-addedInVersion: '32' description: Information regarding the company. $ref: '#/components/schemas/Company' configuration: description: Specify configurations to enable additional features. $ref: '#/components/schemas/Configuration' countryCode: description: 'The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE' type: string dateOfBirth: x-addedInVersion: '7' description: 'The shopper''s date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD' format: date type: string dccQuote: description: The forex quote as returned in the response of the forex service. $ref: '#/components/schemas/ForexQuote' deliveryAddress: description: The address where the purchased goods should be delivered. $ref: '#/components/schemas/Address' deliveryDate: x-addedInVersion: '8' description: 'The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00' format: date-time type: string enableOneClick: x-addedInVersion: '32' description: When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments. type: boolean enablePayOut: x-addedInVersion: '32' description: When true and `shopperReference` is provided, the payment details will be tokenized for payouts. type: boolean enableRecurring: x-addedInVersion: '32' description: When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments. type: boolean entityType: x-addedInVersion: '24' description: The type of the entity the payment is processed for. enum: - NaturalPerson - CompanyName type: string fraudOffset: description: An integer value that is added to the normal fraud score. The value can be either positive or negative. format: int32 type: integer installments: x-addedInVersion: '4' description: Contains installment settings. For more information, refer to [Installments](https://docs.adyen.com/payment-methods/cards/credit-card-installments). $ref: '#/components/schemas/Installments' lineItems: x-addedInVersion: '32' description: 'Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). > This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Atome, Clearpay, Klarna, Ratepay, and Zip.' items: $ref: '#/components/schemas/LineItem' type: array mandate: description: The mandate details to initiate recurring transaction. $ref: '#/components/schemas/Mandate' mcc: x-addedInVersion: '12' description: The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. type: string merchantAccount: description: The merchant account identifier, with which you want to process the transaction. type: string merchantOrderReference: x-addedInVersion: '9' description: 'This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`.' type: string metadata: x-addedInVersion: '17' additionalProperties: type: string description: 'Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the "177" error occurs: "Metadata size exceeds limit". * Maximum 20 characters per key. * Maximum 80 characters per value. ' type: object orderReference: description: When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead. type: string origin: description: 'Required for the Web integration. Set this parameter to the origin URL of the page that you are loading the SDK from.' type: string recurringExpiry: description: Date after which no further authorisations shall be performed. Only for 3D Secure 2. type: string recurringFrequency: description: Minimum number of days between authorisations. Only for 3D Secure 2. type: string reference: description: 'The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens ("-"). Maximum length: 80 characters.' type: string returnUrl: description: 'The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name`' maxLength: 8000 type: string riskData: description: Contains risk data, such as client-side data, used to identify risk for a transaction. $ref: '#/components/schemas/RiskData' sdkVersion: x-addedInVersion: '32' description: The version of the SDK you are using (for Web SDK integrations only). type: string sessionValidity: description: 'The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00' type: string shopperEmail: description: 'The shopper''s email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.' type: string shopperIP: description: 'The shopper''s IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).' type: string shopperInteraction: description: 'Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.' enum: - Ecommerce - ContAuth - Moto - POS type: string shopperLocale: x-addedInVersion: '7' description: The combination of a language code and a country code to specify the language to be used in the payment. type: string shopperName: x-addedInVersion: '7' description: The shopper's full name. $ref: '#/components/schemas/Name' shopperReference: description: "Required for recurring payments. \nYour reference to uniquely\ \ identify this shopper, for example user ID or account ID. Minimum length:\ \ 3 characters.\n> Your reference must not include personally identifiable\ \ information (PII), for example name or email address." type: string shopperStatement: description: "The text to be shown on the shopper's bank statement.\n We\ \ recommend sending a maximum of 22 characters, otherwise banks might\ \ truncate the string.\n Allowed characters: **a-z**, **A-Z**, **0-9**,\ \ spaces, and special characters **. , ' _ - ? + * /**." type: string socialSecurityNumber: x-addedInVersion: '4' description: The shopper's social security number. type: string splits: x-addedInVersion: '37' description: An array of objects specifying how the payment should be split when using either Adyen for Platforms for [marketplaces](https://docs.adyen.com/marketplaces/split-payments) or [platforms]((https://docs.adyen.com/platforms/split-payments), or standalone [Issuing](https://docs.adyen.com/issuing/add-manage-funds#split). items: $ref: '#/components/schemas/Split' type: array store: x-addedInVersion: '23' description: Required for Adyen for Platforms integrations if you are a platform model. This is your [reference](https://docs.adyen.com/api-explorer/Management/3/post/merchants/(merchantId)/stores#request-reference) (on [balance platform](https://docs.adyen.com/platforms)) or the [storeReference](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccountHolder#request-accountHolderDetails-storeDetails-storeReference) (in the [classic integration](https://docs.adyen.com/classic-platforms/processing-payments/route-payment-to-store/#route-a-payment-to-a-store)) for the ecommerce or point-of-sale store that is processing the payment. maxLength: 16 minLength: 1 type: string telephoneNumber: x-addedInVersion: '7' description: The shopper's telephone number. type: string token: description: 'The token obtained when initializing the SDK. > This parameter is required for iOS and Android; not required for Web.' type: string trustedShopper: x-addedInVersion: '37' description: Set to true if the payment should be routed to a trusted MID. type: boolean required: - merchantAccount - reference - amount - returnUrl - countryCode type: object PaymentSetupResponse: additionalProperties: false properties: paymentSession: description: The encoded payment session that you need to pass to the SDK. type: string recurringDetails: deprecated: true description: The detailed list of stored payment details required to generate payment forms. Will be empty if oneClick is set to false in the request. items: $ref: '#/components/schemas/RecurringDetail' type: array type: object PaymentVerificationRequest: additionalProperties: false properties: payload: description: Encrypted and signed payment result data. You should receive this value from the Checkout SDK after the shopper completes the payment. maxLength: 40000 type: string required: - payload type: object PaymentVerificationResponse: additionalProperties: false properties: additionalData: additionalProperties: type: string x-anyOf: - $ref: '#/components/schemas/ResponseAdditionalData3DSecure' - $ref: '#/components/schemas/ResponseAdditionalDataBillingAddress' - $ref: '#/components/schemas/ResponseAdditionalDataCard' - $ref: '#/components/schemas/ResponseAdditionalDataCommon' - $ref: '#/components/schemas/ResponseAdditionalDataDomesticError' - $ref: '#/components/schemas/ResponseAdditionalDataInstallments' - $ref: '#/components/schemas/ResponseAdditionalDataNetworkTokens' - $ref: '#/components/schemas/ResponseAdditionalDataOpi' - $ref: '#/components/schemas/ResponseAdditionalDataSepa' description: 'Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Developers** > **Additional data**.' type: object authResponse: description: 'The authorisation code representing the authentication result. Possible values: * Received * Authorised * Error * Refused * Cancelled * Unknown' type: string fraudResult: description: The fraud result properties of the payment. $ref: '#/components/schemas/FraudResult' merchantReference: description: A unique value that you provided in the initial `/paymentSession` request as a `reference` field. type: string order: description: Contains updated information regarding the order in case order information was provided in the request. $ref: '#/components/schemas/CheckoutOrderResponse' paymentMethod: description: The payment method used in the transaction. type: string pspReference: description: Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. type: string refusalReason: description: 'If the payment''s authorisation is refused or an error occurs during authorisation, this field holds Adyen''s mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).' type: string refusalReasonCode: x-addedInVersion: '37' description: Code that specifies the refusal reason. For more information, see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). type: string resultCode: description: "The result of the payment. For more information, see [Result\ \ codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\ \nPossible values:\n\n* **AuthenticationFinished** \u2013 The payment\ \ has been successfully authenticated with 3D Secure 2. Returned for 3D\ \ Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired**\ \ \u2013 The transaction does not require 3D Secure authentication. Returned\ \ for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n\ * **Authorised** \u2013 The payment was successfully authorised. This\ \ state serves as an indicator to proceed with the delivery of goods and\ \ services. This is a final state.\n* **Cancelled** \u2013 Indicates the\ \ payment has been cancelled (either by the shopper or the merchant) before\ \ processing was completed. This is a final state.\n* **ChallengeShopper**\ \ \u2013 The issuer requires further shopper interaction before the payment\ \ can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error**\ \ \u2013 There was an error when the payment was being processed. The\ \ reason is given in the `refusalReason` field. This is a final state.\n\ * **IdentifyShopper** \u2013 The issuer requires the shopper's device\ \ fingerprint before the payment can be authenticated. Returned for 3D\ \ Secure 2 transactions.\n* **PartiallyAuthorised** \u2013 The payment\ \ has been authorised for a partial amount.\nThis happens for card payments\ \ when the merchant supports Partial Authorisations and the cardholder\ \ has insufficient funds.\n* **Pending** \u2013 Indicates that it is not\ \ possible to obtain the final status of the payment. This can happen\ \ if the systems providing final status information for the payment are\ \ unavailable, or if the shopper needs to take further action to complete\ \ the payment.\n* **PresentToShopper** \u2013 Indicates that the response\ \ contains additional information that you need to present to a shopper,\ \ so that they can use it to complete a payment.\n* **Received** \u2013\ \ Indicates the payment has successfully been received by Adyen, and will\ \ be processed. This is the initial state for all payments.\n* **RedirectShopper**\ \ \u2013 Indicates the shopper should be redirected to an external web\ \ page or app to complete the authorisation.\n* **Refused** \u2013 Indicates\ \ the payment was refused. The reason is given in the `refusalReason`\ \ field. This is a final state." enum: - AuthenticationFinished - AuthenticationNotRequired - Authorised - Cancelled - ChallengeShopper - Error - IdentifyShopper - PartiallyAuthorised - Pending - PresentToShopper - Received - RedirectShopper - Refused - Success type: string serviceError: description: The type of the error. $ref: '#/components/schemas/ServiceErrorDetails' shopperLocale: description: The shopperLocale value provided in the payment request. type: string required: - authResponse - merchantReference - paymentMethod - shopperLocale type: object PaypalUpdateOrderRequest: additionalProperties: false properties: amount: description: The updated final payment amount. This amount is the item total plus the shipping costs of the selected `deliveryMethod`. $ref: '#/components/schemas/Amount' deliveryMethods: description: The list of new delivery methods and the cost of each. items: $ref: '#/components/schemas/DeliveryMethod' type: array paymentData: description: The `paymentData` from the client side. This value changes every time you make a `/paypal/updateOrder` request. type: string pspReference: description: The original `pspReference` from the `/payments` response. type: string sessionId: description: The original `sessionId` from the `/sessions` response. type: string type: object PaypalUpdateOrderResponse: additionalProperties: false properties: paymentData: description: The updated paymentData. type: string status: description: The status of the request. This indicates whether the order was successfully updated with PayPal. enum: - error - success type: string required: - paymentData - status type: object RatepayDetails: additionalProperties: false properties: billingAddress: description: The address where to send the invoice. type: string deliveryAddress: description: The address where the goods should be delivered. type: string personalDetails: description: Shopper name, date of birth, phone number, and email address. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: ratepay description: '**ratepay**' enum: - ratepay - ratepay_directdebit type: string required: - type title: Ratepay type: object Recurring: additionalProperties: false properties: contract: description: "The type of recurring contract to be used.\nPossible values:\n\ * `ONECLICK` \u2013 Payment details can be used to initiate a one-click\ \ payment, where the shopper enters the [card security code (CVC/CVV)](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid).\n\ * `RECURRING` \u2013 Payment details can be used without the card security\ \ code to initiate [card-not-present transactions](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-not-present-cnp).\n\ * `ONECLICK,RECURRING` \u2013 Payment details can be used regardless of\ \ whether the shopper is on your site or not.\n* `PAYOUT` \u2013 Payment\ \ details can be used to [make a payout](https://docs.adyen.com/online-payments/online-payouts)." enum: - ONECLICK - RECURRING - PAYOUT type: string recurringDetailName: description: A descriptive name for this detail. type: string tokenService: x-addedInVersion: '25' description: The name of the token service. enum: - VISATOKENSERVICE - MCTOKENSERVICE - AMEXTOKENSERVICE - TOKEN_SHARING type: string type: object RecurringDetail: additionalProperties: false properties: configuration: additionalProperties: type: string description: The configuration of the payment method. type: object details: description: All input details to be provided to complete the payment with this payment method. items: $ref: '#/components/schemas/InputDetail' type: array group: description: The group where this payment method belongs to. $ref: '#/components/schemas/PaymentMethodGroup' inputDetails: deprecated: true description: All input details to be provided to complete the payment with this payment method. items: $ref: '#/components/schemas/InputDetail' type: array name: description: The displayable name of this payment method. type: string recurringDetailReference: description: The reference that uniquely identifies the recurring detail. type: string storedDetails: description: Contains information on previously stored payment details. $ref: '#/components/schemas/StoredDetails' supportsRecurring: description: Indicates whether this payment method supports tokenization or not. type: boolean type: description: The unique payment method code. type: string type: object Redirect: additionalProperties: false properties: data: additionalProperties: type: string description: When the redirect URL must be accessed via POST, use this data to post to the redirect URL. type: object method: description: 'The web method that you must use to access the redirect URL. Possible values: GET, POST.' enum: - GET - POST type: string url: description: The URL, to which you must redirect a shopper to complete a payment. type: string type: object ResponseAdditionalData3DSecure: additionalProperties: false properties: cardHolderInfo: description: 'Information provided by the issuer to the cardholder. If this field is present, you need to display this information to the cardholder. ' type: string cavv: description: The Cardholder Authentication Verification Value (CAVV) for the 3D Secure authentication session, as a Base64-encoded 20-byte array. type: string cavvAlgorithm: description: The CAVV algorithm used. type: string scaExemptionRequested: description: "Shows the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest)\ \ that Adyen requested for the payment.\n\n Possible values:\n* **lowValue**\ \ \n* **secureCorporate** \n* **trustedBeneficiary** \n* **transactionRiskAnalysis** " type: string threeds2.cardEnrolled: description: Indicates whether a card is enrolled for 3D Secure 2. type: boolean type: object ResponseAdditionalDataBillingAddress: additionalProperties: false properties: billingAddress.city: description: The billing address city passed in the payment request. type: string billingAddress.country: description: 'The billing address country passed in the payment request. Example: NL' type: string billingAddress.houseNumberOrName: description: The billing address house number or name passed in the payment request. type: string billingAddress.postalCode: description: 'The billing address postal code passed in the payment request. Example: 1011 DJ' type: string billingAddress.stateOrProvince: description: 'The billing address state or province passed in the payment request. Example: NH' type: string billingAddress.street: description: The billing address street passed in the payment request. type: string type: object ResponseAdditionalDataCard: additionalProperties: false properties: cardBin: description: 'The first six digits of the card number. This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN. Example: 521234' type: string cardHolderName: description: The cardholder name passed in the payment request. type: string cardIssuingBank: description: The bank or the financial institution granting lines of credit through card association branded payment cards. This information can be included when available. type: string cardIssuingCountry: description: 'The country where the card was issued. Example: US' type: string cardIssuingCurrency: description: "The currency in which the card is issued, if this information\ \ is available. Provided as the currency code or currency number from\ \ the ISO-4217 standard. \n\nExample: USD" type: string cardPaymentMethod: description: 'The card payment method used for the transaction. Example: amex' type: string cardSummary: description: 'The last four digits of a card number. > Returned only in case of a card payment.' type: string issuerBin: description: 'The first eight digits of the card number. Only returned if the card number is 16 digits or more. This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN. Example: 52123423' type: string type: object ResponseAdditionalDataCommon: additionalProperties: false properties: acquirerAccountCode: description: 'The name of the Adyen acquirer account. Example: PayPalSandbox_TestAcquirer > Only relevant for PayPal transactions.' type: string acquirerCode: description: 'The name of the acquirer processing the payment request. Example: TestPmmAcquirer' type: string acquirerReference: description: 'The reference number that can be used for reconciliation in case a non-Adyen acquirer is used for settlement. Example: 7C9N3FNBKT9' type: string alias: description: 'The Adyen alias of the card. Example: H167852639363479' type: string aliasType: description: 'The type of the card alias. Example: Default' type: string authCode: description: 'Authorisation code: * When the payment is authorised successfully, this field holds the authorisation code for the payment. * When the payment is not authorised, this field is empty. Example: 58747' type: string authorisationMid: description: Merchant ID known by the acquirer. type: string authorisedAmountCurrency: description: The currency of the authorised amount, as a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). type: string authorisedAmountValue: description: 'Value of the amount authorised. This amount is represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes).' type: string avsResult: description: 'The AVS result code of the payment, which provides information about the outcome of the AVS check. For possible values, see [AVS](https://docs.adyen.com/risk-management/configure-standard-risk-rules/consistency-rules#billing-address-does-not-match-cardholder-address-avs).' type: string avsResultRaw: description: 'Raw AVS result received from the acquirer, where available. Example: D' type: string bic: description: 'BIC of a bank account. Example: TESTNL01 > Only relevant for SEPA Direct Debit transactions.' type: string coBrandedWith: description: Includes the co-branded card information. type: string cvcResult: description: The result of CVC verification. example: 1 Matches type: string cvcResultRaw: description: The raw result of CVC verification. example: M type: string dsTransID: description: Supported for 3D Secure 2. The unique transaction identifier assigned by the DS to identify a single transaction. type: string eci: description: 'The Electronic Commerce Indicator returned from the schemes for the 3DS payment session. Example: 02' type: string expiryDate: description: 'The expiry date on the card. Example: 6/2016 > Returned only in case of a card payment.' type: string extraCostsCurrency: description: 'The currency of the extra amount charged due to additional amounts set in the skin used in the HPP payment request. Example: EUR' type: string extraCostsValue: description: The value of the extra amount charged due to additional amounts set in the skin used in the HPP payment request. The amount is in minor units. type: string fraudCheck-[itemNr]-[FraudCheckname]: description: The fraud score due to a particular fraud check. The fraud check name is found in the key of the key-value pair. type: string fraudManualReview: description: Indicates if the payment is sent to manual review. type: string fraudResultType: description: The fraud result properties of the payment. enum: - GREEN - FRAUD type: string fundingSource: description: 'Information regarding the funding type of the card. The possible return values are: * CHARGE * CREDIT * DEBIT * PREPAID * PREPAID_RELOADABLE * PREPAID_NONRELOADABLE * DEFFERED_DEBIT > This functionality requires additional configuration on Adyen''s end. To enable it, contact the Support Team. For receiving this field in the notification, enable **Include Funding Source** in **Notifications** > **Additional settings**.' type: string fundsAvailability: description: 'Indicates availability of funds. Visa: * "I" (fast funds are supported) * "N" (otherwise) Mastercard: * "I" (product type is Prepaid or Debit, or issuing country is in CEE/HGEM list) * "N" (otherwise) > Returned when you verify a card BIN or estimate costs, and only if payoutEligible is "Y" or "D".' type: string inferredRefusalReason: description: 'Provides the more granular indication of why a transaction was refused. When a transaction fails with either "Refused", "Restricted Card", "Transaction Not Permitted", "Not supported" or "DeclinedNon Generic" refusalReason from the issuer, Adyen cross references its PSP-wide data for extra insight into the refusal reason. If an inferred refusal reason is available, the `inferredRefusalReason`, field is populated and the `refusalReason`, is set to "Not Supported". Possible values: * 3D Secure Mandated * Closed Account * ContAuth Not Supported * CVC Mandated * Ecommerce Not Allowed * Crossborder Not Supported * Card Updated * Low Authrate Bin * Non-reloadable prepaid card' type: string isCardCommercial: description: Indicates if the card is used for business purposes only. type: string issuerCountry: description: 'The issuing country of the card based on the BIN list that Adyen maintains. Example: JP' type: string liabilityShift: description: A Boolean value indicating whether a liability shift was offered for this payment. type: string mcBankNetReferenceNumber: description: 'The `mcBankNetReferenceNumber`, is a minimum of six characters and a maximum of nine characters long. > Contact Support Team to enable this field.' type: string merchantAdviceCode: description: 'The Merchant Advice Code (MAC) can be returned by Mastercard issuers for refused payments. If present, the MAC contains information about why the payment failed, and whether it can be retried. For more information see [Mastercard Merchant Advice Codes](https://docs.adyen.com/development-resources/raw-acquirer-responses#mastercard-merchant-advice-codes).' type: string merchantReference: description: The reference provided for the transaction. type: string networkTxReference: description: 'Returned in the response if you are not tokenizing with Adyen and are using the Merchant-initiated transactions (MIT) framework from Mastercard or Visa. This contains either the Mastercard Trace ID or the Visa Transaction ID.' type: string nonScheme.transactionLimit: description: The maximum spendable value for a single transaction. Applicable to some gift cards. type: string nonScheme.transactionLimitCcy: description: The currency of the transaction limit. type: string ownerName: description: 'The owner name of a bank account. Only relevant for SEPA Direct Debit transactions.' type: string paymentAccountReference: description: The Payment Account Reference (PAR) value links a network token with the underlying primary account number (PAN). The PAR value consists of 29 uppercase alphanumeric characters. type: string paymentMethod: description: The payment method used in the transaction. type: string paymentMethodVariant: description: 'The Adyen sub-variant of the payment method used for the payment request. For more information, refer to [PaymentMethodVariant](https://docs.adyen.com/development-resources/paymentmethodvariant). Example: mcpro' type: string payoutEligible: description: 'Indicates whether a payout is eligible or not for this card. Visa: * "Y" * "N" Mastercard: * "Y" (domestic and cross-border) * "D" (only domestic) * "N" (no MoneySend) * "U" (unknown)' type: string realtimeAccountUpdaterStatus: description: 'The response code from the Real Time Account Updater service. Possible return values are: * CardChanged * CardExpiryChanged * CloseAccount * ContactCardAccountHolder' type: string receiptFreeText: description: Message to be displayed on the terminal. type: string recurring.firstPspReference: description: 'The `pspReference`, of the first recurring payment that created the recurring detail. This functionality requires additional configuration on Adyen''s end. To enable it, contact the Support Team.' type: string recurring.recurringDetailReference: description: The reference that uniquely identifies the recurring transaction. type: string referred: description: 'If the payment is referred, this field is set to true. This field is unavailable if the payment is referred and is usually not returned with ecommerce transactions. Example: true' type: string refusalReasonRaw: description: 'Raw refusal reason received from the acquirer, where available. Example: AUTHORISED' type: string requestAmount: description: The amount of the payment request. type: string requestCurrencyCode: description: The currency of the payment request. type: string shopperInteraction: description: 'The shopper interaction type of the payment request. Example: Ecommerce' type: string shopperReference: description: 'The shopperReference passed in the payment request. Example: AdyenTestShopperXX' type: string terminalId: description: 'The terminal ID used in a point-of-sale payment. Example: 06022622' type: string threeDAuthenticated: description: 'A Boolean value indicating whether 3DS authentication was completed on this payment. Example: true' type: string threeDAuthenticatedResponse: description: 'The raw 3DS authentication result from the card issuer. Example: N' type: string threeDOffered: description: 'A Boolean value indicating whether 3DS was offered for this payment. Example: true' type: string threeDOfferedResponse: description: 'The raw enrollment result from the 3DS directory services of the card schemes. Example: Y' type: string threeDSVersion: description: The 3D Secure 2 version. type: string visaTransactionId: description: 'The `visaTransactionId`, has a fixed length of 15 numeric characters. > Contact Support Team to enable this field.' type: string xid: description: 'The 3DS transaction ID of the 3DS session sent in notifications. The value is Base64-encoded and is returned for transactions with directoryResponse ''N'' or ''Y''. If you want to submit the xid in your 3D Secure 1 request, use the `mpiData.xid`, field. Example: ODgxNDc2MDg2MDExODk5MAAAAAA=' type: string type: object ResponseAdditionalDataDomesticError: additionalProperties: false properties: domesticRefusalReasonRaw: description: "The reason the transaction was declined, given by the local\ \ issuer. \nCurrently available for merchants in Japan." type: string domesticShopperAdvice: description: "The action the shopper should take, in a local language. \n\ Currently available in Japanese, for merchants in Japan." type: string type: object ResponseAdditionalDataInstallments: additionalProperties: false properties: installmentPaymentData.installmentType: description: Type of installment. The value of `installmentType` should be **IssuerFinanced**. type: string installmentPaymentData.option[itemNr].annualPercentageRate: description: Annual interest rate. type: string installmentPaymentData.option[itemNr].firstInstallmentAmount: description: First Installment Amount in minor units. type: string installmentPaymentData.option[itemNr].installmentFee: description: Installment fee amount in minor units. type: string installmentPaymentData.option[itemNr].interestRate: description: Interest rate for the installment period. type: string installmentPaymentData.option[itemNr].maximumNumberOfInstallments: description: Maximum number of installments possible for this payment. type: string installmentPaymentData.option[itemNr].minimumNumberOfInstallments: description: Minimum number of installments possible for this payment. type: string installmentPaymentData.option[itemNr].numberOfInstallments: description: Total number of installments possible for this payment. type: string installmentPaymentData.option[itemNr].subsequentInstallmentAmount: description: Subsequent Installment Amount in minor units. type: string installmentPaymentData.option[itemNr].totalAmountDue: description: Total amount in minor units. type: string installmentPaymentData.paymentOptions: description: 'Possible values: * PayInInstallmentsOnly * PayInFullOnly * PayInFullOrInstallments' type: string installments.value: description: 'The number of installments that the payment amount should be charged with. Example: 5 > Only relevant for card payments in countries that support installments.' type: string type: object ResponseAdditionalDataNetworkTokens: additionalProperties: false properties: networkToken.available: description: Indicates whether a network token is available for the specified card. type: string networkToken.bin: description: The Bank Identification Number of a tokenized card, which is the first six digits of a card number. type: string networkToken.tokenSummary: description: The last four digits of a network token. type: string type: object ResponseAdditionalDataOpi: additionalProperties: false properties: opi.transToken: description: 'Returned in the response if you included `opi.includeTransToken: true` in an ecommerce payment request. This contains an Oracle Payment Interface token that you can store in your Oracle Opera database to identify tokenized ecommerce transactions. For more information and required settings, see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce).' type: string type: object ResponseAdditionalDataSepa: additionalProperties: false properties: sepadirectdebit.dateOfSignature: description: 'The transaction signature date. Format: yyyy-MM-dd' type: string sepadirectdebit.mandateId: description: Its value corresponds to the pspReference value of the transaction. type: string sepadirectdebit.sequenceType: description: 'This field can take one of the following values: * OneOff: (OOFF) Direct debit instruction to initiate exactly one direct debit transaction. * First: (FRST) Initial/first collection in a series of direct debit instructions. * Recurring: (RCUR) Direct debit instruction to carry out regular direct debit transactions initiated by the creditor. * Final: (FNAL) Last/final collection in a series of direct debit instructions. Example: OOFF' type: string type: object RiskData: additionalProperties: false properties: clientData: description: Contains client-side data, like the device fingerprint, cookies, and specific browser settings. maxLength: 5000 type: string type: object SamsungPayDetails: additionalProperties: false properties: fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string samsungPayToken: description: The payload you received from the Samsung Pay SDK response. maxLength: 10000 type: string type: default: samsungpay description: '**samsungpay**' enum: - samsungpay type: string required: - samsungPayToken title: Samsung Pay type: object SepaDirectDebitDetails: additionalProperties: false properties: iban: description: The International Bank Account Number (IBAN). type: string ownerName: description: The name of the bank account holder. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: sepadirectdebit description: '**sepadirectdebit**' enum: - sepadirectdebit - sepadirectdebit_amazonpay type: string required: - iban - ownerName title: SEPA Direct Debit type: object ServiceError: additionalProperties: false properties: errorCode: description: The error code mapped to the error message. type: string errorType: description: The category of the error. type: string message: description: A short explanation of the issue. type: string pspReference: description: The PSP reference of the payment. type: string status: description: The HTTP response status. format: int32 type: integer type: object ServiceErrorDetails: additionalProperties: false properties: errorCode: type: string errorType: type: string message: type: string pspReference: type: string type: object ShopperInput: additionalProperties: false properties: billingAddress: description: 'Specifies visibility of billing address fields. Permitted values: * editable * hidden * readOnly' enum: - editable - hidden - readOnly type: string deliveryAddress: description: 'Specifies visibility of delivery address fields. Permitted values: * editable * hidden * readOnly' enum: - editable - hidden - readOnly type: string personalDetails: description: 'Specifies visibility of personal details. Permitted values: * editable * hidden * readOnly' enum: - editable - hidden - readOnly type: string type: object ShopperInteractionDevice: additionalProperties: false properties: locale: description: Locale on the shopper interaction device. type: string os: description: Operating system running on the shopper interaction device. type: string osVersion: description: Version of the operating system on the shopper interaction device. type: string type: object Split: additionalProperties: false properties: account: description: 'The unique identifier of the account to which the split amount is booked. Required if `type` is **MarketPlace** or **BalanceAccount**. * [Classic Platforms integration](https://docs.adyen.com/classic-platforms): The [`accountCode`](https://docs.adyen.com/api-explorer/Account/latest/post/updateAccount#request-accountCode) of the account to which the split amount is booked. * [Balance Platform](https://docs.adyen.com/adyen-for-platforms-model): The [`balanceAccountId`](https://docs.adyen.com/api-explorer/balanceplatform/latest/get/balanceAccounts/_id_#path-id) of the account to which the split amount is booked.' type: string amount: description: 'The amount of the split item. * Required for all split types in the [Classic Platforms integration](https://docs.adyen.com/classic-platforms). * Required if `type` is **BalanceAccount**, **Commission**, **Default**, or **VAT** in your [Balance Platform](https://docs.adyen.com/adyen-for-platforms-model) integration.' $ref: '#/components/schemas/SplitAmount' description: description: Your description for the split item. type: string reference: description: 'Your unique reference for the part of the payment booked to the specified `account`. This is required if `type` is **MarketPlace** ([Classic Platforms integration](https://docs.adyen.com/classic-platforms)) or **BalanceAccount** ([Balance Platform](https://docs.adyen.com/adyen-for-platforms-model)). For the other types, we also recommend providing a **unique** reference so you can reconcile the split and the associated payment in the transaction overview and in the reports.' type: string type: description: "The part of the payment you want to book to the specified\ \ `account`.\n\nPossible values for the [Balance Platform](https://docs.adyen.com/adyen-for-platforms-model):\n\ * **BalanceAccount**: books part of the payment (specified in `amount`)\ \ to the specified `account`.\n* Transaction fees types that you can book\ \ to the specified `account`:\n * **AcquiringFees**: the aggregated\ \ amount of the interchange and scheme fees.\n * **PaymentFee**: the\ \ aggregated amount of all transaction fees.\n * **AdyenFees**: the\ \ aggregated amount of Adyen's commission and markup fees.\n * **AdyenCommission**:\ \ the transaction fees due to Adyen under [blended rates](https://www.adyen.com/knowledge-hub/interchange-fees-explained).\n\ \ * **AdyenMarkup**: the transaction fees due to Adyen under [Interchange\ \ ++ pricing](https://www.adyen.com/knowledge-hub/interchange-fees-explained).\n\ \ * **Interchange**: the fees paid to the issuer for each payment made\ \ with the card network.\n * **SchemeFee**: the fees paid to the card\ \ scheme for using their network. \n* **Remainder**: the amount left over\ \ after a currency conversion, booked to the specified `account`.\n* **VAT**:\ \ the value-added tax charged on the payment, booked to your platforms\ \ liable balance account.\n* **Commission**: your platform's commission\ \ (specified in `amount`) on the payment, booked to your liable balance\ \ account.\n* **Default**: in very specific use cases, allows you to book\ \ the specified `amount` to the specified `account`. For more information,\ \ contact Adyen support.\n\nPossible values for the [Classic Platforms\ \ integration](https://docs.adyen.com/classic-platforms): **Commission**,\ \ **Default**, **Marketplace**, **PaymentFee**, **VAT**." enum: - AcquiringFees - AdyenCommission - AdyenFees - AdyenMarkup - BalanceAccount - Commission - Default - Interchange - MarketPlace - PaymentFee - Remainder - SchemeFee - Surcharge - Tip - VAT type: string required: - type type: object SplitAmount: additionalProperties: false properties: currency: description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). By default, this is the original payment currency. maxLength: 3 minLength: 3 type: string value: description: The value of the split amount, in [minor units](https://docs.adyen.com/development-resources/currency-codes). format: int64 type: integer required: - value type: object StandalonePaymentCancelRequest: additionalProperties: false properties: applicationInfo: description: Information about your application. For more details, see [Building Adyen solutions](https://docs.adyen.com/development-resources/building-adyen-solutions). $ref: '#/components/schemas/ApplicationInfo' merchantAccount: description: The merchant account that is used to process the payment. type: string paymentReference: description: The [`reference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__reqParam_reference) of the payment that you want to cancel. type: string reference: description: 'Your reference for the cancel request. Maximum length: 80 characters.' type: string required: - merchantAccount - paymentReference type: object StandalonePaymentCancelResponse: additionalProperties: false properties: merchantAccount: description: The merchant account that is used to process the payment. type: string paymentReference: description: The [`reference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__reqParam_reference) of the payment to cancel. type: string pspReference: description: Adyen's 16-character reference associated with the cancel request. type: string reference: description: Your reference for the cancel request. type: string status: description: The status of your request. This will always have the value **received**. enum: - received type: string required: - status - merchantAccount - pspReference - paymentReference type: object StoredDetails: additionalProperties: false properties: bank: description: The stored bank account. $ref: '#/components/schemas/BankAccount' card: description: The stored card information. $ref: '#/components/schemas/Card' emailAddress: description: The email associated with stored payment details. type: string type: object StoredPaymentMethodDetails: additionalProperties: false properties: recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: description: The payment method type. enum: - bcmc_mobile - bcmc_mobile_QR - bcmc_mobile_app - momo_wallet - momo_wallet_app - twint - paymaya_wallet - grabpay_SG - grabpay_MY - grabpay_TH - grabpay_ID - grabpay_VN - grabpay_PH - oxxo - gcash - dana - kakaopay - truemoney type: string title: Stored Payment Method type: object StoredPaymentMethodRequest: additionalProperties: false properties: merchantAccount: description: The merchant account identifier, with which you want to process the transaction. type: string paymentMethod: description: Contains the information required to store a payment method. $ref: '#/components/schemas/PaymentMethodToStore' shopperEmail: description: The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. type: string shopperIP: description: The IP address of a shopper. type: string shopperReference: description: A unique identifier for the shopper (for example, user ID or account ID). type: string required: - merchantAccount - shopperReference - paymentMethod type: object StoredPaymentMethodResource: additionalProperties: false properties: brand: description: The brand of the card. type: string expiryMonth: description: The month the card expires. type: string expiryYear: description: The year the card expires, for example **2022**. type: string holderName: description: The unique payment method code. type: string iban: description: The IBAN of the bank account. type: string id: description: A unique identifier of this stored payment method. type: string lastFour: description: The last four digits of the PAN. type: string name: description: The display name of the stored payment method. type: string networkTxReference: description: 'Returned in the response if you are not tokenizing with Adyen and are using the Merchant-initiated transactions (MIT) framework from Mastercard or Visa. This contains either the Mastercard Trace ID or the Visa Transaction ID.' type: string shopperEmail: description: "The shopper\u2019s email address." type: string shopperReference: description: 'Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address.' maxLength: 256 minLength: 3 type: string supportedShopperInteractions: description: The supported shopper interactions for this stored payment method. items: type: string type: array type: description: The type of payment method. type: string type: object SubInputDetail: additionalProperties: false properties: configuration: additionalProperties: type: string description: Configuration parameters for the required input. type: object items: description: In case of a select, the items to choose from. items: $ref: '#/components/schemas/Item' type: array key: description: The value to provide in the result. type: string optional: description: True if this input is optional to provide. type: boolean type: description: The type of the required input. type: string value: description: The value can be pre-filled, if available. type: string type: object SubMerchant: additionalProperties: false properties: city: description: 'The city of the sub-merchant''s address. * Format: Alphanumeric * Maximum length: 13 characters' type: string country: description: "The three-letter country code of the sub-merchant's address.\ \ For example, **BRA** for Brazil. \n* Format: [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3)\n\ * Fixed length: 3 characters" type: string mcc: description: "The sub-merchant's 4-digit Merchant Category Code (MCC). \n\ * Format: Numeric\n* Fixed length: 4 digits" type: string name: description: 'The name of the sub-merchant. Based on scheme specifications, this value will overwrite the shopper statement that will appear in the card statement. * Format: Alphanumeric * Maximum length: 22 characters' type: string taxId: description: 'The tax ID of the sub-merchant. * Format: Numeric * Fixed length: 11 digits for the CPF or 14 digits for the CNPJ' type: string type: object ThreeDSecureData: additionalProperties: false properties: authenticationResponse: description: 'In 3D Secure 1, the authentication response if the shopper was redirected. In 3D Secure 2, this is the `transStatus` from the challenge result. If the transaction was frictionless, omit this parameter.' enum: - Y - N - U - A type: string cavv: description: The cardholder authentication value (base64 encoded, 20 bytes in a decoded form). format: byte type: string cavvAlgorithm: description: The CAVV algorithm used. Include this only for 3D Secure 1. type: string directoryResponse: description: 'In 3D Secure 1, this is the enrollment response from the 3D directory server. In 3D Secure 2, this is the `transStatus` from the `ARes`.' enum: - A - C - D - I - N - R - U - Y type: string eci: description: The electronic commerce indicator. type: string xid: description: Supported for 3D Secure 1. The transaction identifier (Base64-encoded, 20 bytes in a decoded form). format: byte type: string type: object UpdatePaymentLinkRequest: additionalProperties: false properties: status: description: 'Status of the payment link. Possible values: * **expired**' enum: - expired type: string required: - status type: object UpiCollectDetails: additionalProperties: false properties: billingSequenceNumber: description: The sequence number for the debit. For example, send **2** if this is the second debit for the subscription. The sequence number is included in the notification sent to the shopper. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string shopperNotificationReference: description: The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used for recurring payment only. type: string type: default: upi_collect description: '**upi_collect**' enum: - upi_collect type: string virtualPaymentAddress: description: The virtual payment address for UPI. type: string required: - type - billingSequenceNumber title: UPI Collect type: object UpiIntentDetails: additionalProperties: false properties: appId: description: TPAP (Third Party Application) Id that is being used to make the UPI payment type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string shopperNotificationReference: description: The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used for recurring payment only. type: string type: default: upi_intent description: '**upi_intent**' enum: - upi_intent type: string required: - type title: UPI Intent type: object UtilityRequest: additionalProperties: false properties: originDomains: description: The list of origin domains, for which origin keys are requested. items: type: string type: array required: - originDomains type: object UtilityResponse: additionalProperties: false properties: originKeys: x-addedInVersion: '1' additionalProperties: type: string description: The list of origin keys for all requested domains. For each list item, the key is the domain and the value is the origin key. type: object type: object VippsDetails: additionalProperties: false properties: recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string telephoneNumber: description: '' type: string type: default: vipps description: '**vipps**' enum: - vipps type: string required: - telephoneNumber title: Vipps type: object VisaCheckoutDetails: additionalProperties: false properties: fundingSource: description: The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. enum: - credit - debit type: string type: default: visacheckout description: '**visacheckout**' enum: - visacheckout type: string visaCheckoutCallId: description: The Visa Click to Pay Call ID value. When your shopper selects a payment and/or a shipping address from Visa Click to Pay, you will receive a Visa Click to Pay Call ID. type: string required: - visaCheckoutCallId title: Visa Checkout type: object WeChatPayDetails: additionalProperties: false properties: type: default: wechatpay description: '**wechatpay**' enum: - wechatpay - wechatpay_pos type: string title: WeChat Pay type: object WeChatPayMiniProgramDetails: additionalProperties: false properties: appId: type: string openid: type: string type: default: wechatpayMiniProgram description: '**wechatpayMiniProgram**' enum: - wechatpayMiniProgram type: string title: WeChat Pay - Mini Program type: object ZipDetails: additionalProperties: false properties: clickAndCollect: description: Set this to **true** if the shopper would like to pick up and collect their order, instead of having the goods delivered to them. type: string recurringDetailReference: description: This is the `recurringDetailReference` returned in the response when you created the token. type: string type: default: zip description: '**zip**' enum: - zip - zip_pos type: string title: Zip type: object securitySchemes: ApiKeyAuth: in: header name: X-API-Key type: apiKey BasicAuth: scheme: basic type: http headers: Idempotency-Key: description: The idempotency key used for processing the request. Present if the key was provided in the request. schema: type: string parameters: Idempotency-Key: description: A unique identifier for the message with a maximum of 64 characters (we recommend a UUID). example: 37ca9c97-d1d1-4c62-89e8-706891a563ed name: Idempotency-Key in: header schema: type: string examples: generic-400: summary: Response code 400. Bad request. value: status: 400 errorCode: '702' message: 'Unexpected input: ", expected: }' errorType: validation generic-401: summary: Response code 401. Unauthorized. value: status: 401 errorCode: '000' message: HTTP Status Response - Unauthorized errorType: security generic-403: summary: Response code 403. Forbidden. value: status: 403 errorCode: '901' message: Invalid Merchant Account errorType: security generic-422: summary: Response code 422. Unprocessable entity. value: status: 422 errorCode: '14_030' message: Return URL is missing. errorType: validation generic-500: summary: Response code 500. Internal server error. value: status: 500 errorCode: '905' message: Payment details are not supported errorType: configuration pspReference: '8516091485743033' get-paymentLinks-linkId-basic-200: summary: Example response for request 'basic' value: amount: currency: EUR value: 8700 countryCode: NL expiresAt: '2021-04-08T14:06:39Z' merchantAccount: YOUR_MERCHANT_ACCOUNT reference: shopper-reference-ekvL83 shopperLocale: hu-HU shopperReference: shopper-reference-LZfdWZ status: active url: https://test.adyen.link/PL61C53A8B97E6915A patch-paymentLinks-linkId-basic: summary: Update the status of a payment link value: status: expired patch-paymentLinks-linkId-basic-200: summary: Example response for request 'basic' value: amount: currency: EUR value: 8700 countryCode: NL expiresAt: '2021-04-08T14:06:39Z' merchantAccount: YOUR_MERCHANT_ACCOUNT reference: shopper-reference-ekvL83 shopperLocale: hu-HU shopperReference: shopper-reference-LZfdWZ status: expired url: https://test.adyen.link/PL61C53A8B97E6915A post-applePay-sessions-basic: summary: Get payment session for Apple Pay value: displayName: YOUR_MERCHANT_NAME domainName: YOUR_DOMAIN_NAME merchantIdentifier: YOUR_MERCHANT_ID post-applePay-sessions-basic-200: summary: Payment session data for Apple Pay value: data: eyJ2Z... post-cancels-cancel-with-own-reference: summary: Cancel a payment using your own reference description: Example cancel request with your own reference value: paymentReference: YOUR_UNIQUE_REFERENCE_FOR_THE_PAYMENT reference: YOUR_UNIQUE_REFERENCE_FOR_THE_CANCELLATION merchantAccount: YOUR_MERCHANT_ACCOUNT post-cancels-cancel-with-own-reference-201: summary: Payment cancellation requested description: Example response when a payment cancellation was requested value: merchantAccount: YOUR_MERCHANT_ACCOUNT paymentReference: YOUR_UNIQUE_REFERENCE_FOR_THE_PAYMENT reference: YOUR_UNIQUE_REFERENCE_FOR_THE_CANCELLATION pspReference: 993617894906488A status: received post-cardDetails-basic: summary: Get a list of brands on a card description: Example request for getting a list of brands on a card using the first 6 digits of the card number. value: merchantAccount: YOUR_MERCHANT_ACCOUNT cardNumber: '411111' post-cardDetails-basic-200: summary: List of brands on the card description: Example response when the card is co-branded. value: brands: - type: visa supported: true - type: cartebancaire supported: true post-cardDetails-supported-brands: summary: Get a list of brands on a card specifying your supported card brands description: Example request for getting a list of brands on a card using the first 6 digits of the card number and including the card brands you support. value: merchantAccount: YOUR_MERCHANT_ACCOUNT cardNumber: '411111' supportedBrands: - visa - mc - amex post-cardDetails-supported-brands-200: summary: List of brands on the card when you specify your supported card brands description: Example response when the card is co-branded, and you only support Visa. value: brands: - type: visa supported: true - type: cartebancaire supported: false post-donations-donations: summary: Start a donation transaction value: amount: currency: EUR value: 1000 reference: YOUR_DONATION_REFERENCE paymentMethod: type: scheme donationToken: YOUR_DONATION_TOKEN donationOriginalPspReference: 991559660454807J donationAccount: CHARITY_ACCOUNT returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT shopperInteraction: ContAuth post-donations-donations-200: summary: Example response value: id: UNIQUE_RESOURCE_ID status: completed donationAccount: CHARITY_ACCOUNT merchantAccount: YOUR_MERCHANT_ACCOUNT amount: currency: EUR value: 1000 reference: YOUR_DONATION_REFERENCE payment: pspReference: '8535762347980628' resultCode: Authorised additionalData: merchantReference: YOUR_DONATION_REFERENCE post-donations-donations-with-token: summary: Start a donation transaction with a token value: amount: currency: EUR value: 1000 reference: YOUR_DONATION_REFERENCE paymentMethod: type: scheme recurringDetailReference: '7219687191761347' returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT donationAccount: CHARITY_ACCOUNT shopperInteraction: ContAuth shopperReference: YOUR_SHOPPER_REFERENCE recurringProcessingModel: CardOnFile post-orders-basic: summary: Create an order value: reference: YOUR_ORDER_REFERENCE amount: value: 2500 currency: EUR merchantAccount: YOUR_MERCHANT_ACCOUNT post-orders-basic-200: summary: Example response for request 'basic' value: pspReference: '8616178914061985' resultCode: Success expiresAt: '2021-04-09T14:16:46Z' orderData: Ab02b4c0!BQABAgCxXvknCldOcRElkxY8Za7iyym4Wv8aDzyNwmj/3nh4G6YtwnUIJHaK62NlN4oIsACdkn1FEjBwKlheG40jvXcYGBk4KFV5WvOhTVCpv/KXnkrI7xQv/u2lE7U4wA+HPB6K4Zj2L8xO/ogZi+zGZqFs5m16jmkH7ku6FzXygXLNuUCuOlmlXSZhdkHHTNVQSq1MELDK9OL74y532ETRPTCNxx8WlEiZB+LDqYrPvH9GgigtD5kw8Do45jfFfG72kWBEgfYqp4mbUmBB9ebXFYZKfF0qvW1x7A2Y9+/MFlTIdXfKW484bJeDBCTTrmKGXIj+U4r5imr5fXTyNLcrxyUqwrb9jg+5B4qg1XB6Cgj5UPlSI4O62I7v0s5TTj69dzLwUQRxSQbwLrZVGYavXzeVKI54BVLRV3d/+BbPvTqnTo34UhfZbPlOx9F2eyaS0ZXdOKnHw89uGUgxUpLsMqnbRysi/pxpZaulel+0mExb68wVxb/7Teob5eRG4gp7cfZVZs6tLXOYWL+W0TqIlsa3hWsfM0LeaovzkoDtW/pK5JABXwMtLig9tsxoEh9ONYtIzkXC21LZ8ebiuSIMaPizjF8yca+QxrCZalQsu6uKnBz/mm8nnsflaGU2QS5zcoxk1RudL1Bl36LM9UZGPpFEYWiYA4sUsnNLw7peJjWCGhDepnwMv4TlgsEtoDtz1T54AEp7ImtleSI6IkFGMEFBQTEwM0NBNTM3RUFFRDg3QzI0REQ1MzkwOUI4MEE3OEE5MjNFMzgyM0Q2OERBQ0M5NEI5RkY4MzA1REMifRslOdmfgUHTXl66WPD9xoW2whIeRx/jR++2MqNE16x6zQy+KtDN8/h60crZwmqkjVTQYqQlsYSYDHSIyb4wnnay16/5il1yS7vN3UCLaTXjYBIAyyx6Wr9j4P3CI/etB+PpviHoESC4mV6ZN4whMDQyziQ8s230GtboXbh42qND7rk9phySBogowQlXrtF+l2n2F46nyif0owEgik5fGARfvjZtY2w23s30KMLNwU4gWSvX4H6RMVS8TfZH2fKfNrwB3tZUXwYkELs5ntaHysswq5Mn5aq2BKAMHu/Rh/wureMSI73Qi0avjrzWCwzt3JH4wnzErMnOZwSdgA== reference: shopper-reference-ekvL83 remainingAmount: currency: EUR value: 2500 post-orders-cancel-basic: summary: Cancel an order value: order: pspReference: '8815517812932012' orderData: 823fh892f8f18f4...148f13f9f3f merchantAccount: YOUR_MERCHANT_ACCOUNT post-orders-cancel-basic-200: summary: Example response for request 'basic' value: pspReference: '8816178914079738' resultCode: Received post-originKeys-basic: summary: Get origin keys value: originDomains: - https://www.your-domain1.com - https://www.your-domain2.com - https://www.your-domain3.com post-originKeys-basic-200: summary: Example response for request 'basic' value: originKeys: https://www.your-domain1.com: pub.v2.8116178901076090.aHR0cHM6Ly93d3cueW91ci1kb21haW4xLmNvbQ.pvbYlrXz0ICP4kwMJXDGDLVMqALhwXr1MSRjT-fkhvw https://www.your-domain3.com: pub.v2.8116178901076090.aHR0cHM6Ly93d3cueW91ci1kb21haW4zLmNvbQ.FrTpVz7_RzAywKasM0kXCRoMfoMkKIKaxjFymRGORIc https://www.your-domain2.com: pub.v2.8116178901076090.aHR0cHM6Ly93d3cueW91ci1kb21haW4yLmNvbQ.LdN9kvJ35fYFFiBSJA4idMnwwxJ5_yXpeNS__Ap5wkg post-paymentLinks-basic: summary: Create a payment link value: reference: YOUR_ORDER_NUMBER amount: value: 1250 currency: BRL countryCode: BR merchantAccount: YOUR_MERCHANT_ACCOUNT shopperReference: YOUR_SHOPPER_REFERENCE shopperEmail: test@email.com shopperLocale: pt-BR billingAddress: street: Roque Petroni Jr postalCode: '59000060' city: "S\xE3o Paulo" houseNumberOrName: '999' country: BR stateOrProvince: SP deliveryAddress: street: Roque Petroni Jr postalCode: '59000060' city: "S\xE3o Paulo" houseNumberOrName: '999' country: BR stateOrProvince: SP post-paymentLinks-basic-201: summary: Payment link created value: amount: currency: BRL value: 1250 billingAddress: city: "S\xE3o Paulo" country: BR houseNumberOrName: '999' postalCode: '59000060' stateOrProvince: SP street: Roque Petroni Jr countryCode: BR deliveryAddress: city: "S\xE3o Paulo" country: BR houseNumberOrName: '999' postalCode: '59000060' stateOrProvince: SP street: Roque Petroni Jr expiresAt: '2022-10-28T09:16:22Z' merchantAccount: YOUR_MERCHANT_ACCOUNT reference: YOUR_ORDER_NUMBER reusable: false shopperEmail: test@email.com shopperLocale: pt-BR shopperReference: YOUR_SHOPPER_REFERENCE status: active url: https://test.adyen.link/PLE83C39B0A0DE0C1E post-paymentMethods-balance-basic: summary: Get gift card balance specifying amount of 10 EUR value: paymentMethod: type: givex number: '4126491073027401' cvc: '737' amount: currency: EUR value: 1000 merchantAccount: YOUR_MERCHANT_ACCOUNT post-paymentMethods-balance-basic-200: summary: Gift card balance greater than amount specified in request value: pspReference: KHQC5N7G84BLNK43 resultCode: Success balance: currency: EUR value: 5000 post-paymentMethods-balance-not-enough: summary: Get gift card balance specifying amount of 100 EUR value: paymentMethod: type: givex number: '4126491073027401' cvc: '737' amount: currency: EUR value: 10000 merchantAccount: YOUR_MERCHANT_ACCOUNT post-paymentMethods-balance-not-enough-200: summary: Gift card balance lower than amount specified in request value: pspReference: FKSPNCQ8HXSKGK82 resultCode: NotEnoughBalance balance: currency: EUR value: 5000 post-paymentMethods-basic: summary: Get available payment methods value: merchantAccount: YOUR_MERCHANT_ACCOUNT post-paymentMethods-basic-200: summary: Example response for request 'basic' value: paymentMethods: - details: - details: - key: ownerName type: text - key: bankLocationId type: text - key: bankAccountNumber type: text key: bankAccount type: bankAccount name: ACH Direct Debit type: ach - name: Adyen Voucher type: adyen_test_voucher - details: - details: - key: firstName type: text - key: lastName type: text - key: dateOfBirth type: date - key: telephoneNumber type: tel - key: shopperEmail type: emailAddress key: personalDetails type: fieldSet - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: NL name: Netherlands - id: BE name: Belgium key: country type: select key: billingAddress type: address - key: separateDeliveryAddress optional: true type: boolean value: 'false' - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: NL name: Netherlands - id: BE name: Belgium key: country type: select key: deliveryAddress optional: true type: address name: AfterPay Invoice type: afterpay_default - name: AfterPay DirectDebit type: afterpay_directdebit - name: Afterpay type: afterpaytouch - details: - key: encryptedCardNumber type: cardToken - key: encryptedSecurityCode type: cardToken - key: encryptedExpiryMonth type: cardToken - key: encryptedExpiryYear type: cardToken - key: holderName optional: true type: text name: Credit Card type: scheme - name: AliPay type: alipay - name: AliPay HK type: alipay_hk - name: AliPay type: alipay_wap - details: - key: additionalData.androidpay.token type: androidPayToken name: Android Pay type: androidpay - details: - key: additionalData.applepay.token type: applePayToken name: Apple Pay type: applepay - name: Credit Card via AsiaPay type: asiapay - name: China UnionPay type: asiapay_unionpay - name: Baby Gift Card type: babygiftcard - name: Baloto type: baloto - name: BancNet type: bancnet - name: Bank Transfer (BG) type: bankTransfer_BG - name: Bank Transfer (CH) type: bankTransfer_CH - name: Bank Transfer (DE) type: bankTransfer_DE - name: Bank Transfer (FI) type: bankTransfer_FI - name: Bank Transfer (GB) type: bankTransfer_GB - name: Bank Transfer (HU) type: bankTransfer_HU - name: SEPA Bank Transfer type: bankTransfer_IBAN - name: Bank Transfer (IE) type: bankTransfer_IE - name: Electronic Bank Transfer (MX) type: bankTransfer_MX_linked - name: Bank Transfer (MX) type: bankTransfer_MX_offline - name: Bank Transfer (NL) type: bankTransfer_NL - name: Bank Transfer (PL) type: bankTransfer_PL - name: Bank Transfer (SE) type: bankTransfer_SE - name: Bank Transfer (US) type: bankTransfer_US - name: Payconiq by Bancontact type: bcmc_mobile - name: Bijenkorf Cadeaucard type: bijcadeaucard - name: 99Bill type: bill99 - details: - items: - id: AUB_DIRECT name: AU Small Finance Bank - id: ALB_DIRECT name: 'Allahabad Bank ' - id: APG_DIRECT name: Andhra Pragathi Grameena Bank - id: BDN_DIRECT name: Bandhan bank - id: BBK_DIRECT name: Bank of Bahrain and Kuwait - id: BBR_DIRECT name: Bank of Baroda - Retail Banking - id: BCB_DIRECT name: 'Bassien Catholic Co-Operative Bank ' - id: CNB_DIRECT name: Canara Bank - id: SYD_DIRECT name: Canara Bank (e-Syndicate) - id: CSB_DIRECT name: Catholic Syrian Bank - id: CBI_DIRECT name: Central Bank of India - id: CUB_DIRECT name: City Union Bank - id: COB_DIRECT name: Cosmos Bank - id: DEN_DIRECT name: Dena Bank - id: DBK_DIRECT name: Deutsche Bank - id: DCB_DIRECT name: Development Credit Bank - id: DLB_DIRECT name: Dhanlakshmi Bank - Retail Net Banking - id: ESF_DIRECT name: ESAF Small Finance Bank - id: EQB_DIRECT name: Equitas Small Finance Bank - id: FBK_DIRECT name: Federal Bank - id: FNC_DIRECT name: Fincare Bank - id: HDF_DIRECT name: HDFC Bank - id: ICI_DIRECT name: 'ICICI Bank ' - id: IDB_DIRECT name: IDBI Bank - Retail Net Banking - id: IDN_DIRECT name: IDFC FIRST Bank - id: INB_DIRECT name: Indian Bank - id: IOB_DIRECT name: Indian Overseas Bank - id: IDS_DIRECT name: IndusInd Bank - id: JKB_DIRECT name: Jammu & Kashmir Bank - id: JNB_DIRECT name: Jana Small Finance Bank - id: JSB_DIRECT name: Janata Sahakari Bank Ltd Pune - id: KJB_DIRECT name: Kalyan Janata Sahakari Bank - id: KBL_DIRECT name: Karnataka Bank Ltd - id: KVB_DIRECT name: Karur Vysya Bank - id: 162_DIRECT name: Kotak Bank - id: LVR_DIRECT name: Laxmi Vilas Bank - Retail - id: NKB_DIRECT name: NKGSB Co-op Bank - id: NEB_DIRECT name: North East Small Finance Bank - id: OBC_DIRECT name: PNB (Erstwhile-Oriental Bank of Commerce) - id: UNI_DIRECT name: PNB (Erstwhile-United Bank of India) - id: PMC_DIRECT name: Punjab & Maharastra Co-op Bank - id: PSB_DIRECT name: Punjab & Sind Bank - id: CPN_DIRECT name: 'Punjab National Bank - Corporate ' - id: PNB_DIRECT name: Punjab National Bank - Retail Banking - id: RBL_DIRECT name: RBL Bank Limited - id: SWB_DIRECT name: Saraswat Bank - id: SHB_DIRECT name: Shivalik Mercantile Cooperative Bank Ltd - id: SIB_DIRECT name: South Indian Bank - id: SCB_DIRECT name: Standard Chartered Bank - id: SBI_DIRECT name: State Bank of India - id: SRB_DIRECT name: Suryoday Small Finance Bank - id: TJB_DIRECT name: TJSB Bank - id: TNC_DIRECT name: Tamil Nadu State Co-operative Bank - id: TMB_DIRECT name: Tamilnad Mercantile Bank Ltd - id: TBB_DIRECT name: Thane Bharat Sahakari Bank Ltd - id: MSB_DIRECT name: The Mehsana Urban Co Op Bank Ltd - id: UCO_DIRECT name: UCO Bank - id: UBI_DIRECT name: Union Bank of India - id: ADB_DIRECT name: Union Bank of India (Erstwhile Andhra Bank) - id: CRP_DIRECT name: Union Bank of India (Erstwhile Corporation Bank) - id: VRB_DIRECT name: Varachha Co-operative Bank Limited - id: VJB_DIRECT name: Vijaya Bank - id: YBK_DIRECT name: Yes Bank - id: ZOB_DIRECT name: Zoroastrian Co-operative Bank Limited - id: DBS_DIRECT name: digibank by DBS key: issuer type: select name: Online Banking India type: billdesk_online - name: UPI type: billdesk_upi - details: - items: - id: DCW_DIRECT name: DCB Cippy - id: ICC_DIRECT name: ICC Cash Card - id: OXY_DIRECT name: Oxigen Wallet - id: PCH_DIRECT name: Pay World Money key: issuer type: select name: Wallets India type: billdesk_wallet - name: Blik type: blik - name: Bloemen Giftcard type: bloemengiftcard - name: Boekenbon Giftcard type: boekenbon - name: Boleto type: boleto - name: Boleto Bancario type: boletobancario_santander - name: Bradesco type: bradesco - name: Cash-Ticket type: cashticket - name: CashU type: cashu - name: CCAvenue type: ccavenue - name: Mula Checkout type: cellulant - name: Chasin Giftcard type: chasingiftcard - name: Clearpay type: clearpay - name: ClickandBuy type: clickandbuy - name: Paiement en 3 fois par Cartes Bancaires type: cofinoga_3xcb - name: Costes Giftcard type: costesgiftcard - name: custom_settlement type: custom_settlement - name: DANA type: dana - name: DineroMail type: dineromail - name: Online bank transfer. type: directEbanking - name: Direct Debit Brazil - Banco do Brazil type: directdebit_BR_bancodobrasil - name: Direct Debit Brazil - Bradesco type: directdebit_BR_bradesco - name: Direct Debit Brazil - Caixa Economica Federal type: directdebit_BR_caixa - name: Direct Debit Brazil - HSBC type: directdebit_BR_hsbc - name: Direct Debit Brazil - Itau type: directdebit_BR_itau - name: Direct Debit Brazil - Santander type: directdebit_BR_santander - name: BACS Direct Debit type: directdebit_GB - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: Alfamart type: doku_alfamart - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: BCA Bank Transfer type: doku_bca_va - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: BNI VA type: doku_bni_va - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: BRI VA type: doku_bri_va - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: CIMB VA type: doku_cimb_va - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: Danamon VA type: doku_danamon_va - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: Indomaret type: doku_indomaret - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: Mandiri VA type: doku_mandiri_va - details: - key: ovoId type: text name: OVO type: doku_ovo - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: Bank Transfer type: doku_permata_lite_atm - details: - key: shopperEmail type: emailAddress - key: firstName type: text - key: lastName type: text - key: infix optional: true type: text name: DOKU wallet type: doku_wallet - details: - items: - id: '66' name: Bank Nowy BFG S.A. - id: '92' name: "Bank Sp\xF3\u0142dzielczy w Brodnicy" - id: '11' name: Bank transfer / postal - id: '74' name: "Banki Sp\xF3\u0142dzielcze" - id: '73' name: BLIK - id: '90' name: "BNP Paribas - p\u0142ac\u0119 z Pl@net" - id: '59' name: CinkciarzPAY - id: '87' name: Credit Agricole PBL - id: '83' name: EnveloBank - id: '76' name: Getin Bank PBL - id: '81' name: Idea Cloud - id: '7' name: ING Corporate customers - id: '93' name: Kasa Stefczyka - id: '44' name: "Millennium - P\u0142atno\u015Bci Internetowe" - id: '10' name: Millennium Corporate customers - id: '68' name: mRaty - id: '1' name: mTransfer - id: '91' name: Nest Bank - id: '80' name: Noble Pay - id: '50' name: Pay Way Toyota Bank - id: '45' name: Pay with Alior Bank - id: '36' name: Pekao24Przelew - id: '70' name: Pocztowy24 - id: '6' name: Przelew24 - id: '46' name: "P\u0142ac\u0119 z Citi Handlowy" - id: '38' name: "P\u0142ac\u0119 z ING" - id: '2' name: "P\u0142ac\u0119 z Inteligo" - id: '4' name: "P\u0142ac\u0119 z iPKO" - id: '75' name: "P\u0142ac\u0119 z Plus Bank" - id: '51' name: "P\u0142a\u0107 z BO\u015A" - id: '55' name: Raty z Alior Bankiem PLN - id: '89' name: Santander - id: '52' name: SkyCash key: issuer type: select name: Local Polish Payment Methods type: dotpay - name: Dragonpay Prepaid Credits type: dragonpay_credits - name: Online Banking type: dragonpay_ebanking - name: GCash type: dragonpay_gcash - name: Over The Counter Banks type: dragonpay_otc_banking - name: OTC non-Bank via Dragonpay type: dragonpay_otc_non_banking - name: Convenience Stores type: dragonpay_otc_philippines - name: 7/11 type: dragonpay_seveneleven - name: eagleeye_voucher type: eagleeye_voucher - name: Finnish E-Banking type: ebanking_FI - name: Pay-easy ATM type: econtext_atm - name: Online Banking type: econtext_online - name: 7-Eleven type: econtext_seven_eleven - name: Convenience Stores type: econtext_stores - name: eft_directdebit_CA type: eft_directdebit_CA - name: Lastschrift (ELV) type: elv - details: - items: - id: '231' name: POP Pankki - id: '551' name: "Komer\u010Dn\xED banka" - id: '232' name: Aktia - id: '552' name: Raiffeisen - id: '233' name: "S\xE4\xE4st\xF6pankki" - id: '750' name: Swedbank - id: '211' name: Nordea - id: '553' name: "\u010CSOB" - id: '234' name: S-Pankki - id: '751' name: SEB - id: '554' name: Moneta - id: '235' name: OmaSP - id: '752' name: Nordea - id: '213' name: Op-Pohjola - id: '555' name: UniCredit - id: '753' name: LHV - id: '556' name: Fio - id: '557' name: mBank - id: '216' name: Handelsbanken - id: '558' name: Air Bank - id: '260' name: "L\xE4nsf\xF6rs\xE4kringar" - id: '240' name: BankDeposit - id: '265' name: Sparbanken - id: '640' name: BankDeposit - id: '200' name: "\xC5landsbanken" - id: '940' name: Swedbank - id: '500' name: "\u010Cesk\xE1 spo\u0159itelna" - id: '720' name: Swedbank - id: '941' name: SEB - id: '204' name: Danske Bank - id: '721' name: SEB - id: '942' name: Citadele - id: '205' name: Handelsbanken - id: '722' name: DNB - id: '943' name: DNB - id: '206' name: Nordea - id: '723' name: "\u0160iauli\u0173 bankas" - id: '207' name: SEB - id: '724' name: Nordea - id: '505' name: "Komer\u010Dn\xED banka" - id: '208' name: Skandiabanken - id: '209' name: Swedbank key: issuer type: select name: Bank Payment type: entercash - name: Nationale Entertainment Card type: entertainmentcard - details: - items: - id: d5d5b133-1c0d-4c08-b2be-3c9b116dc326 name: Dolomitenbank - id: ee9fc487-ebe0-486c-8101-17dce5141a67 name: Raiffeissen Bankengruppe - id: 6765e225-a0dc-4481-9666-e26303d4f221 name: Hypo Tirol Bank AG - id: 8b0bfeea-fbb0-4337-b3a1-0e25c0f060fc name: Sparda Bank Wien - id: 1190c4d1-b37a-487e-9355-e0a067f54a9f name: Schoellerbank AG - id: e2e97aaa-de4c-4e18-9431-d99790773433 name: Volksbank Gruppe - id: bb7d223a-17d5-48af-a6ef-8a2bf5a4e5d9 name: Immo-Bank - id: e6819e7a-f663-414b-92ec-cf7c82d2f4e5 name: Bank Austria - id: eff103e6-843d-48b7-a6e6-fbd88f511b11 name: Easybank AG - id: 25942cc9-617d-42a1-89ba-d1ab5a05770a name: VR-BankBraunau - id: 4a0a975b-0594-4b40-9068-39f77b3a91f9 name: Volkskreditbank - id: 3fdc41fc-3d3d-4ee3-a1fe-cd79cfd58ea3 name: Erste Bank und Sparkassen - id: ba7199cc-f057-42f2-9856-2378abf21638 name: BAWAG P.S.K. Gruppe key: issuer type: select name: EPS type: eps - name: Expert Cadeaukaart type: expertgiftcard - details: - details: - key: firstName type: text - key: lastName type: text - key: telephoneNumber type: tel - key: shopperEmail type: emailAddress key: personalDetails type: fieldSet - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: FR name: France - id: ES name: Spain key: country type: select key: billingAddress type: address - key: separateDeliveryAddress optional: true type: boolean value: 'false' - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: FR name: France - id: ES name: Spain key: country type: select key: deliveryAddress optional: true type: address name: 3x Oney type: facilypay_3x - details: - details: - key: firstName type: text - key: lastName type: text - key: telephoneNumber type: tel - key: shopperEmail type: emailAddress key: personalDetails type: fieldSet - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: FR name: France - id: ES name: Spain key: country type: select key: billingAddress type: address - key: separateDeliveryAddress optional: true type: boolean value: 'false' - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: FR name: France - id: ES name: Spain key: country type: select key: deliveryAddress optional: true type: address name: 4x Oney type: facilypay_4x - name: Fashioncheque type: fashioncheque - details: - key: shopper.firstName type: text - key: shopper.lastName type: text - key: shopperEmail type: emailAddress - key: telephoneNumber type: tel - key: countryCode type: text name: Fawry type: fawry - name: FijnCadeau type: fijncadeau - name: Fleurop Bloemenbon type: fleuropbloemenbon - name: Fonq Giftcard type: fonqgiftcard - name: Gall & Gall type: gallgall - name: GCash type: gcash - name: Generic GiftCard type: genericgiftcard - name: GiftFor2 type: giftfor2card - name: Givex type: givex - name: Globe GCash type: globegcash - name: Goldsmiths Card type: goldsmithscard - name: GoPay Wallet type: gopay_wallet - name: OVO type: grabpay_ID - name: GrabPay type: grabpay_PH - name: GrabPay type: grabpay_SG - name: Hallmark Card type: hallmarkcard - name: HDFC type: hdfc - name: Hunkemoller Member Card type: hmclub - name: Hunkemoller Lingerie Card type: hmlingerie - details: - items: - id: '1121' name: Test Issuer - id: '1154' name: Test Issuer 5 - id: '1153' name: Test Issuer 4 - id: '1152' name: Test Issuer 3 - id: '1151' name: Test Issuer 2 - id: '1162' name: Test Issuer Cancelled - id: '1161' name: Test Issuer Pending - id: '1160' name: Test Issuer Refused - id: '1159' name: Test Issuer 10 - id: '1158' name: Test Issuer 9 - id: '1157' name: Test Issuer 8 - id: '1156' name: Test Issuer 7 - id: '1155' name: Test Issuer 6 key: issuer type: select name: iDEAL type: ideal - name: igive type: igive - name: Korean Account Transfer (IniPay) type: inicisIniPay_accounttransfer - name: Korean Credit Cards (IniPay) type: inicisIniPay_creditcard - name: Korean Mobile Phone (IniPay) type: inicisIniPay_mobilephone - name: Korean Virtual Account (IniPay) type: inicisIniPay_virtualaccount - name: Korean Account Transfer (Mobile) type: inicisMobile_accounttransfer - name: Korean Credit Cards (Mobile) type: inicisMobile_creditcard - name: Korean Mobile Phone (Mobile) type: inicisMobile_mobilephone - name: Korean Virtual Account (Mobile) type: inicisMobile_virtualaccount - name: Korean Credit Cards type: inicis_creditcard - name: "Interac\xAE Online" type: interac - name: Instant EFT type: ipay - name: iPay88 type: ipay88 - name: isracard type: isracard - name: Phone Payment type: ivr - name: Landline phone type: ivrLandline - name: Mobile phone type: ivrMobile - name: Kado Wereld type: kadowereld - name: KakaoPay type: kakaopay - name: Karen Millen Card type: karenmillen - name: Karen Millen GiftCard type: karenmillengiftcard - name: Bank Transfer type: kcp_banktransfer - name: "Korea\u2013issued cards" type: kcp_creditcard - name: PayCo type: kcp_payco - name: Naver Pay type: kcp_naverpay - name: Virtual Account via KCP type: kcp_va - name: Pay later with Klarna. type: klarna - name: Pay over time with Klarna. type: klarna_account - name: Buy Now, Pay Later with Billie type: klarna_b2b - name: Pay now with Klarna. type: klarna_paynow - name: Leisure Card type: leisurecard - name: China Credit Card type: lianlianpay_creditcard - name: China Debit Card type: lianlianpay_debitcard - details: - key: telephoneNumber type: tel name: China Online Banking - Credit Card type: lianlianpay_ebanking_credit - details: - items: - id: '01030000' name: Agricultural Bank of China - id: '4031000' name: Bank of Beijing - id: '01040000' name: Bank of China - id: '03020000' name: China Citic Bank - id: '01050000' name: China Construction Bank - id: '03030000' name: China Everbright Bank - id: 03080000 name: China Merchants Bank - id: '03050000' name: China Minsheng Banking Group - id: '03040000' name: Hua Xia Bank Co - id: '01020000' name: Industrial and Commercial Bank of China - id: '03070000' name: PingAn Bank - id: '1000000' name: Postal Savings Bank of China key: issuer type: select - key: telephoneNumber type: tel name: China Online Banking - Debit Card type: lianlianpay_ebanking_debit - details: - items: - id: '01030000' name: Agricultural Bank of China - id: '01050000' name: China Construction Bank - id: 03080000 name: China Merchants Bank - id: '01020000' name: Industrial and Commercial Bank of China - id: '03100000' name: Shanghai Pudong Development Bank key: issuer type: select - key: telephoneNumber type: tel name: China Online Banking - Enterprise type: lianlianpay_ebanking_enterprise - name: Loods5 Cadeaukaart type: loods5giftcard - name: Loods5 Tegoedbon type: loods5prepaidcard - name: Love2Shop GiftCard type: love2shop - details: - key: shopper.firstName type: text - key: shopper.lastName type: text - key: shopperEmail type: emailAddress - key: telephoneNumber type: tel - key: countryCode type: text name: mada type: mada - name: Mappin & Webb Card type: mappinwebbcard - name: MB WAY type: mbway - details: - key: additionalData.amazonPayToken type: text name: Amazon Pay supportsRecurring: true type: amazonpay - name: Mercado Pago type: mercadopago - name: MobilePay type: mobilepay - name: AliPay via Razer Merchant Services type: molpay_alipay - name: 7-Eleven type: molpay_cash - name: CIMB Virtual Account type: molpay_cimb_va - name: Malaysia E-Banking via Razer Merchant Services type: molpay_ebanking_MY - details: - items: - id: vtcpay-vietinbank name: Vietinbank - id: vtcpay-bidv name: BIDV - id: vtcpay-agribank name: Agribank - id: vtcpay-mb name: MB Bank - id: vtcpay-sacombank name: Sacombank - id: vtcpay-dongabank name: DongABank - id: vtcpay-maritimebank name: MaritimeBank - id: vtcpay-vietcombank name: Vietcombank - id: vtcpay-acb name: ACB - id: vtcpay-techcombank name: Techcombank key: issuer type: select name: Vietnam E-Banking type: molpay_ebanking_VN - details: - items: - id: fpx_bimb name: Bank Islam - id: fpx_uob name: UOB Bank - id: fpx_cimbclicks name: CIMB Clicks - id: fpx_kfh name: Kuwait Finance House - id: fpx_rhb name: RHB Now - id: fpx_abmb name: Alliance Bank - id: fpx_amb name: Am Online - id: fpx_hsbc name: HSBC - id: fpx_abb name: Affin Bank - id: fpx_ocbc name: OCBC Bank - id: fpx_pbb name: Public Bank - id: fpx_scb name: Standard Chartered Bank - id: fpx_bsn name: Bank Simpanan Nasional - id: fpx_mb2u name: Maybank2u - id: fpx_hlb name: Hong Leong Connect - id: fpx_bmmb name: Bank Muamalat - id: fpx_bkrm name: Bank Rakyat key: issuer type: select name: Malaysia E-Banking type: molpay_ebanking_fpx_MY - name: eNETS Debit type: molpay_enetsd - name: epay type: molpay_epay - name: Esapay type: molpay_esapay - name: MyClear FPX type: molpay_fpx - name: Maybank2u type: molpay_maybank2u - name: Nganluong type: molpay_nganluong - name: Convenience Stores Thailand type: molpay_paysbuy - name: MOLPoints type: molpay_points - name: RHB Now type: molpay_rhb - name: SAM by SingPost type: molpay_singpost - name: MOLWallet type: molpay_wallet - name: MoMo ATM type: momo_atm - name: Momo Wallet type: momo_wallet - name: Moneybookers type: moneybookers - name: Multibanco type: multibanco - name: De Nationale Musicalcard type: musicalcard - name: Nationale Bioscoopbon type: nationalebioscoopbon - name: Nationale Tuinbon type: nationaletuinbon - name: Nationale Verwen Cadeaubon type: nationaleverwencadeaubon - name: BankAxess type: netaxept_bankaxess - name: NETELLER type: neteller - name: Onebip type: onebip - name: One Two Three type: onetwothree - name: Online Banking PL type: onlineBanking_PL - details: - items: - id: '1' name: Model Bank v2 key: issuer type: select name: Online banking type: openbanking_UK - name: Oxxo type: oxxo - name: Pathe Giftcard type: pathegiftcard - name: PayBright type: paybright - name: Maya Wallet type: paymaya_wallet - name: PayPal type: paypal - name: Paysafecard type: paysafecard - name: Payshop type: payshop - name: PayD AMT via Paythru type: paythru_amt - name: EFT via Paythru type: paythru_eft - name: PayTM type: paytm - details: - key: virtualPaymentAddress type: text name: PayU UPI type: payu_IN_upi - name: EFT Pro via PayU type: payu_ZA_eftpro - details: - key: additionalData.paywithgoogle.token type: payWithGoogleToken name: Google Pay type: paywithgoogle - name: pix type: pix - name: Plastix type: plastix - name: Pluim type: pluimgiftcard - name: Podium Card type: podiumcard - name: POLi type: poli - name: PPS type: pps - name: Primera Cadeaukaart type: primeracadeaucard - name: Illicado Gift Card type: prosodie_illicado - name: PSE type: pse - details: - items: - id: '+7' name: RU - id: '+9955' name: GE - id: '+507' name: PA - id: '+44' name: GB - id: '+992' name: TJ - id: '+370' name: LT - id: '+972' name: IL - id: '+996' name: KG - id: '+380' name: UA - id: '+84' name: VN - id: '+90' name: TR - id: '+994' name: AZ - id: '+374' name: AM - id: '+371' name: LV - id: '+91' name: IN - id: '+66' name: TH - id: '+373' name: MD - id: '+1' name: US - id: '+81' name: JP - id: '+998' name: UZ - id: '+77' name: KZ - id: '+375' name: BY - id: '+372' name: EE - id: '+40' name: RO - id: '+82' name: KR key: qiwiwallet.telephoneNumberPrefix type: select - key: qiwiwallet.telephoneNumber type: text name: Qiwi Wallet type: qiwiwallet - name: RatePay Invoice type: ratepay - name: RatePay Direct Debit type: ratepay_directdebit - name: Rituals Giftcard type: rituals - name: Rob Peetoom Giftcard type: robpeetoomgiftcard - name: SafetyPay type: safetypay - name: SafetyPay Cash type: safetypay_cash - name: Shoes&Accessories Cadeau type: sagiftcard - name: Score Giftcard type: scoregiftcard - name: SEB Direktbetalning type: sebdirectpayment - details: - key: sepa.ownerName type: text - key: sepa.ibanNumber type: text name: SEPA Direct Debit type: sepadirectdebit - name: 7-Eleven type: seveneleven - name: Premium SMS type: sms - name: SVS type: svs - name: Swish type: swish - name: TCS Test GiftCard type: tcstestgiftcard - name: TenPay type: tenpay - name: The Sting Giftcard type: thestinggiftcard - name: TrueMoney type: truemoney - name: Trustly type: trustly - name: Online Banking by Trustpay type: trustpay - name: TWINT type: twint - name: Ukash type: ukash - name: UnionPay type: unionpay - details: - key: virtualPaymentAddress type: text name: UPI Collect type: upi_collect - name: Valuelink type: valuelink - name: V&D Cadeaukaart type: vdcadeaucard - details: - key: telephoneNumber optional: true type: tel name: Vipps type: vipps - details: - key: additionalData.visacheckout.callId type: text name: Visa Checkout type: visacheckout - name: VVV Cadeaubon type: vvvcadeaubon - name: VVV Giftcard type: vvvgiftcard - name: Webshop Giftcard type: webshopgiftcard - name: WeChat Pay type: wechatpayMiniProgram - name: WeChat Pay type: wechatpayQR - name: WeChat Pay type: wechatpayWeb - name: WE Fashion Giftcard type: wefashiongiftcard - name: Western Union type: westernunion - name: Winkel Cheque type: winkelcheque - name: WOS Card type: woscard - name: Alfa-Click type: yandex_alfaclick - name: Pay using bank card type: yandex_bank_card - name: Cash terminals type: yandex_cash - name: Pay using installments type: yandex_installments - name: YooMoney type: yandex_money - name: Promsvyazbank type: yandex_promsvyazbank - name: SberPay type: yandex_sberbank - name: WebMoney type: yandex_webmoney - name: Your Gift type: yourgift - name: Zip type: zip post-paymentMethods-filtered: summary: Get payment methods based on the country and amount value: merchantAccount: YOUR_MERCHANT_ACCOUNT countryCode: NL shopperLocale: nl-NL amount: currency: EUR value: 1000 post-paymentMethods-filtered-200: summary: Example response for request 'filtered' value: paymentMethods: - details: - items: - id: '1121' name: Test Issuer - id: '1154' name: Test Issuer 5 - id: '1153' name: Test Issuer 4 - id: '1152' name: Test Issuer 3 - id: '1151' name: Test Issuer 2 - id: '1162' name: Test Issuer Cancelled - id: '1161' name: Test Issuer Pending - id: '1160' name: Test Issuer Refused - id: '1159' name: Test Issuer 10 - id: '1158' name: Test Issuer 9 - id: '1157' name: Test Issuer 8 - id: '1156' name: Test Issuer 7 - id: '1155' name: Test Issuer 6 key: issuer type: select name: iDEAL type: ideal - details: - key: encryptedCardNumber type: cardToken - key: encryptedSecurityCode type: cardToken - key: encryptedExpiryMonth type: cardToken - key: encryptedExpiryYear type: cardToken - key: holderName optional: true type: text name: "Hitelk\xE1rtya" type: scheme - name: PayPal type: paypal - details: - details: - key: firstName type: text - key: lastName type: text - key: dateOfBirth type: date - key: telephoneNumber type: tel - key: shopperEmail type: emailAddress key: personalDetails type: fieldSet - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: NL name: Netherlands - id: BE name: Belgium key: country type: select value: NL key: billingAddress type: address - key: separateDeliveryAddress optional: true type: boolean value: 'false' - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: NL name: Netherlands - id: BE name: Belgium key: country type: select value: NL key: deliveryAddress optional: true type: address name: AfterPay Invoice type: afterpay_default - name: Pay later with Klarna. type: klarna - details: - key: sepa.ownerName type: text - key: sepa.ibanNumber type: text name: SEPA Direct Debit type: sepadirectdebit - name: Paysafecard type: paysafecard - name: Bijenkorf Cadeaucard type: bijcadeaucard - name: Fonq Giftcard type: fonqgiftcard - name: Bank Transfer (NL) type: bankTransfer_NL - name: Pathe Giftcard type: pathegiftcard - name: VVV Giftcard type: vvvgiftcard - name: Podium Card type: podiumcard - name: RatePay Direct Debit type: ratepay_directdebit - name: Rituals Giftcard type: rituals - name: Hunkemoller Lingerie Card type: hmlingerie - name: Primera Cadeaukaart type: primeracadeaucard - name: Fashioncheque type: fashioncheque - name: NETELLER type: neteller - name: Adyen Voucher type: adyen_test_voucher - name: AfterPay B2B type: afterpay_b2b - name: AfterPay DirectDebit type: afterpay_directdebit - name: AliPay type: alipay - name: AliPay type: alipay_wap - details: - key: additionalData.androidpay.token type: androidPayToken name: Android Pay type: androidpay - details: - key: additionalData.applepay.token type: applePayToken name: Apple Pay type: applepay - name: Baby Gift Card type: babygiftcard - name: SEPA Bank Transfer type: bankTransfer_IBAN - name: Bloemen Giftcard type: bloemengiftcard - name: Boekenbon Giftcard type: boekenbon - name: Cash-Ticket type: cashticket - name: Chasin Giftcard type: chasingiftcard - name: ClickandBuy type: clickandbuy - name: Costes Giftcard type: costesgiftcard - name: custom_settlement type: custom_settlement - name: eft_directdebit_CA type: eft_directdebit_CA - name: Nationale Entertainment Card type: entertainmentcard - name: Expert Cadeaukaart type: expertgiftcard - name: FijnCadeau type: fijncadeau - name: Fleurop Bloemenbon type: fleuropbloemenbon - name: Gall & Gall type: gallgall - name: Generic GiftCard type: genericgiftcard - name: GiftFor2 type: giftfor2card - name: Givex type: givex - name: Goldsmiths Card type: goldsmithscard - name: Hunkemoller Member Card type: hmclub - name: Phone Payment type: ivr - name: Landline phone type: ivrLandline - name: Mobile phone type: ivrMobile - name: Kado Wereld type: kadowereld - name: Karen Millen GiftCard type: karenmillengiftcard - name: Leisure Card type: leisurecard - name: Loods5 Cadeaukaart type: loods5giftcard - name: Loods5 Tegoedbon type: loods5prepaidcard - details: - key: additionalData.amazonPayToken type: text name: Amazon Pay supportsRecurring: true type: amazonpay - name: MOLPoints type: molpay_points - name: Moneybookers type: moneybookers - name: De Nationale Musicalcard type: musicalcard - name: Nationale Bioscoopbon type: nationalebioscoopbon - name: Nationale Tuinbon type: nationaletuinbon - name: Nationale Verwen Cadeaubon type: nationaleverwencadeaubon - name: Onebip type: onebip - details: - key: additionalData.paywithgoogle.token type: payWithGoogleToken name: Google Pay type: paywithgoogle - name: Plastix type: plastix - name: Pluim type: pluimgiftcard - name: Illicado Gift Card type: prosodie_illicado - name: RatePay Invoice type: ratepay - name: Rob Peetoom Giftcard type: robpeetoomgiftcard - name: Shoes&Accessories Cadeau type: sagiftcard - name: Score Giftcard type: scoregiftcard - name: Premium SMS type: sms - name: SVS type: svs - name: TCS Test GiftCard type: tcstestgiftcard - name: The Sting Giftcard type: thestinggiftcard - name: Ukash type: ukash - name: UnionPay type: unionpay - name: Valuelink type: valuelink - name: V&D Cadeaukaart type: vdcadeaucard - details: - key: additionalData.visacheckout.callId type: text name: Visa Checkout type: visacheckout - name: VVV Cadeaubon type: vvvcadeaubon - name: Webshop Giftcard type: webshopgiftcard - name: WE Fashion Giftcard type: wefashiongiftcard - name: Western Union type: westernunion - name: Winkel Cheque type: winkelcheque - name: Your Gift type: yourgift post-paymentMethods-include-oneclick: summary: Get payment methods including stored card details value: merchantAccount: YOUR_MERCHANT_ACCOUNT countryCode: NL amount: currency: EUR value: 1000 shopperReference: YOUR_SHOPPER_REFERENCE post-paymentMethods-include-oneclick-200: summary: Example response for request 'include-oneclick' value: paymentMethods: - details: - items: - id: '1121' name: Test Issuer - id: '1154' name: Test Issuer 5 - id: '1153' name: Test Issuer 4 - id: '1152' name: Test Issuer 3 - id: '1151' name: Test Issuer 2 - id: '1162' name: Test Issuer Cancelled - id: '1161' name: Test Issuer Pending - id: '1160' name: Test Issuer Refused - id: '1159' name: Test Issuer 10 - id: '1158' name: Test Issuer 9 - id: '1157' name: Test Issuer 8 - id: '1156' name: Test Issuer 7 - id: '1155' name: Test Issuer 6 key: issuer type: select name: iDEAL type: ideal - details: - key: encryptedCardNumber type: cardToken - key: encryptedSecurityCode type: cardToken - key: encryptedExpiryMonth type: cardToken - key: encryptedExpiryYear type: cardToken - key: holderName optional: true type: text name: Credit Card type: scheme - name: PayPal type: paypal - details: - details: - key: firstName type: text - key: lastName type: text - key: dateOfBirth type: date - key: telephoneNumber type: tel - key: shopperEmail type: emailAddress key: personalDetails type: fieldSet - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: NL name: Netherlands - id: BE name: Belgium key: country type: select value: NL key: billingAddress type: address - key: separateDeliveryAddress optional: true type: boolean value: 'false' - details: - key: street type: text - key: houseNumberOrName type: text - key: city type: text - key: postalCode type: text - key: stateOrProvince optional: true type: text - items: - id: NL name: Netherlands - id: BE name: Belgium key: country type: select value: NL key: deliveryAddress optional: true type: address name: AfterPay Invoice type: afterpay_default - name: Pay later with Klarna. type: klarna - details: - key: sepa.ownerName type: text - key: sepa.ibanNumber type: text name: SEPA Direct Debit type: sepadirectdebit - name: Paysafecard type: paysafecard - name: Bijenkorf Cadeaucard type: bijcadeaucard - name: Fonq Giftcard type: fonqgiftcard - name: Bank Transfer (NL) type: bankTransfer_NL - name: Pathe Giftcard type: pathegiftcard - name: VVV Giftcard type: vvvgiftcard - name: Podium Card type: podiumcard - name: RatePay Direct Debit type: ratepay_directdebit - name: Rituals Giftcard type: rituals - name: Hunkemoller Lingerie Card type: hmlingerie - name: Primera Cadeaukaart type: primeracadeaucard - name: Fashioncheque type: fashioncheque - name: NETELLER type: neteller - name: Adyen Voucher type: adyen_test_voucher - name: AfterPay B2B type: afterpay_b2b - name: AfterPay DirectDebit type: afterpay_directdebit - name: AliPay type: alipay - name: AliPay type: alipay_wap - details: - key: additionalData.androidpay.token type: androidPayToken name: Android Pay type: androidpay - details: - key: additionalData.applepay.token type: applePayToken name: Apple Pay type: applepay - name: Baby Gift Card type: babygiftcard - name: SEPA Bank Transfer type: bankTransfer_IBAN - name: Bloemen Giftcard type: bloemengiftcard - name: Boekenbon Giftcard type: boekenbon - name: Cash-Ticket type: cashticket - name: Chasin Giftcard type: chasingiftcard - name: ClickandBuy type: clickandbuy - name: Costes Giftcard type: costesgiftcard - name: custom_settlement type: custom_settlement - name: eft_directdebit_CA type: eft_directdebit_CA - name: Nationale Entertainment Card type: entertainmentcard - name: Expert Cadeaukaart type: expertgiftcard - name: FijnCadeau type: fijncadeau - name: Fleurop Bloemenbon type: fleuropbloemenbon - name: Gall & Gall type: gallgall - name: Generic GiftCard type: genericgiftcard - name: GiftFor2 type: giftfor2card - name: Givex type: givex - name: Goldsmiths Card type: goldsmithscard - name: Hunkemoller Member Card type: hmclub - name: Phone Payment type: ivr - name: Landline phone type: ivrLandline - name: Mobile phone type: ivrMobile - name: Kado Wereld type: kadowereld - name: Karen Millen GiftCard type: karenmillengiftcard - name: Leisure Card type: leisurecard - name: Loods5 Cadeaukaart type: loods5giftcard - name: Loods5 Tegoedbon type: loods5prepaidcard - details: - key: additionalData.amazonPayToken type: text name: Amazon Pay supportsRecurring: true type: amazonpay - name: MOLPoints type: molpay_points - name: Moneybookers type: moneybookers - name: De Nationale Musicalcard type: musicalcard - name: Nationale Bioscoopbon type: nationalebioscoopbon - name: Nationale Tuinbon type: nationaletuinbon - name: Nationale Verwen Cadeaubon type: nationaleverwencadeaubon - name: Onebip type: onebip - details: - key: additionalData.paywithgoogle.token type: payWithGoogleToken name: Google Pay type: paywithgoogle - name: Plastix type: plastix - name: Pluim type: pluimgiftcard - name: Illicado Gift Card type: prosodie_illicado - name: RatePay Invoice type: ratepay - name: Rob Peetoom Giftcard type: robpeetoomgiftcard - name: Shoes&Accessories Cadeau type: sagiftcard - name: Score Giftcard type: scoregiftcard - name: Premium SMS type: sms - name: SVS type: svs - name: TCS Test GiftCard type: tcstestgiftcard - name: The Sting Giftcard type: thestinggiftcard - name: Ukash type: ukash - name: UnionPay type: unionpay - name: Valuelink type: valuelink - name: V&D Cadeaukaart type: vdcadeaucard - details: - key: additionalData.visacheckout.callId type: text name: Visa Checkout type: visacheckout - name: VVV Cadeaubon type: vvvcadeaubon - name: Webshop Giftcard type: webshopgiftcard - name: WE Fashion Giftcard type: wefashiongiftcard - name: Western Union type: westernunion - name: Winkel Cheque type: winkelcheque - name: Your Gift type: yourgift post-paymentSession-android: summary: Set up a payment session (Android) value: amount: currency: EUR value: 17408 reference: Your order number shopperReference: YOUR_SHOPPER_REFERENCE channel: Android token: TOKEN_YOU_GET_FROM_CHECKOUT_SDK returnUrl: app:// countryCode: NL shopperLocale: nl_NL sessionValidity: '2017-04-06T13:09:13Z' merchantAccount: YOUR_MERCHANT_ACCOUNT post-paymentSession-ios: summary: Set up a payment session (iOS) value: amount: currency: EUR value: 17408 reference: Your order number shopperReference: YOUR_SHOPPER_REFERENCE channel: iOS token: TOKEN_YOU_GET_FROM_CHECKOUT_SDK returnUrl: app:// countryCode: NL shopperLocale: nl_NL sessionValidity: '2017-04-06T13:09:13Z' merchantAccount: YOUR_MERCHANT_ACCOUNT post-paymentSession-split: summary: Split a payment between a sub-merchant and a platform account value: amount: currency: EUR value: 6200 additionalData: split.api: '1' split.nrOfItems: '2' split.totalAmount: '6200' split.currencyCode: EUR split.item1.amount: '6000' split.item1.type: MarketPlace split.item1.account: '151272963' split.item1.reference: '6124145' split.item1.description: 'Porcelain Doll: Eliza (20cm)' split.item2.amount: '200' split.item2.type: Commission split.item2.reference: '6124146' reference: Your order number shopperReference: YOUR_SHOPPER_REFERENCE channel: Android token: TOKEN_YOU_GET_FROM_CHECKOUT_SDK returnUrl: app:// countryCode: NL shopperLocale: nl_NL sessionValidity: '2017-04-06T13:09:13Z' merchantAccount: YOUR_MERCHANT_ACCOUNT post-paymentSession-web: summary: Set up a payment session (Web) value: amount: currency: EUR value: 17408 reference: Your order number shopperReference: YOUR_SHOPPER_REFERENCE channel: Web origin: https://www.yourwebsite.com returnUrl: https://www.yourshop.com/checkout/result countryCode: NL shopperLocale: nl_NL merchantAccount: YOUR_MERCHANT_ACCOUNT sdkVersion: 1.3.0 post-paymentSession-web-200: summary: Example response for request 'web' value: paymentSession: eyJjaGVja291dHNob3BwZXJCYXNlVXJsIjoiaHR0cHM6XC9cL2NoZWNrb3V0c2hvcHBlci10ZXN0LmFkeWVuLmNvbVwvY2hlY2tvdXRzaG9wcGVyXC8iLCJkaXNhYmxlUmVjdXJyaW5nRGV0YWlsVXJsIjoiaHR0cHM6XC9cL2NoZWNrb3V0c2hvcHBlci10ZXN0LmFkeWVuLmNvbVwvY2hlY2tvdXRzaG9wcGVyXC9zZXJ2aWNlc1wvUGF5bWVudEluaXRpYXRpb25cL3YxXC9kaXNhYmxlUmVjdXJyaW5nRGV0YWlsIiwiZ2VuZXJhdGlvbnRpbWUiOiIyMDIxLTA0LTA4VDE0OjEzOjA5WiIsImluaXRpYXRpb25VcmwiOiJodHRwczpcL1wvY2hlY2tvdXRzaG9wcGVyLXRlc3QuYWR5ZW4uY29tXC9jaGVja291dHNob3BwZXJcL3NlcnZpY2VzXC9QYXltZW50SW5pdGlhdGlvblwvdjFcL2luaXRpYXRlP3Rva2VuPXB1Yi52Mi44MTE2MTc4OTAxMDc2MDkwLmFIUjBjSE02THk5M2QzY3VlVzkxY25kbFluTnBkR1V1WTI5dC5wdXByMzNEQ05EQ2k2WldjQ2J1TDFfa2F6NTdKaF9JYmttMm1rQlpQNWdrIiwib3JpZ2luIjoiaHR0cHM6XC9cL3d3dy55b3Vyd2Vic2l0ZS5jb20iLCJvcmlnaW5LZXkiOiJwdWIudjIuODExNjE3ODkwMTA3NjA5MC5hSFIwY0hNNkx5OTNkM2N1ZVc5MWNuZGxZbk5wZEdVdVkyOXQucHVwcjMzRENORENpNlpXY0NidUwxX2thejU3SmhfSWJrbTJta0JaUDVnayIsInBheW1lbnQiOnsiYW1vdW50Ijp7ImN1cnJlbmN5IjoiRVVSIiwidmFsdWUiOjE3NDA4fSwiY291bnRyeUNvZGUiOiJOTCIsInJlZmVyZW5jZSI6InNob3BwZXItcmVmZXJlbmNlLWVrdkw4MyIsInJldHVyblVybCI6Imh0dHBzOlwvXC93d3cueW91cnNob3AuY29tXC9jaGVja291dFwvcmVzdWx0Iiwic2Vzc2lvblZhbGlkaXR5IjoiMjAyMS0wNC0wOFQxNToxMzowOVoiLCJzaG9wcGVyTG9jYWxlIjoiaHUtSFUiLCJzaG9wcGVyUmVmZXJlbmNlIjoic2hvcHBlci1yZWZlcmVuY2UtTFpmZFdaIn0sInBheW1lbnREYXRhIjoiQWIwMmI0YzAhQlFBQkFnQ2d0K05JMHhMc3RONFN2SEd6V2hScWh3NlBNWTFXeW1QYVBSa3ZtQVoxcms4cXJzcUMyRnA4VjlyMkp5XC81a3pKMStqbVA1NkZrSnoyVHFKRzVNVHRcL2tzZlJuSDBsanlNNU1nMXAwRWJjT1o2c1R5NkNsVXlPNnpuOUthM1NQaUUxZkFrU2VcL3dVajR3Zld2WkhNY1JNNUR5K3c0M0lNUldIN2h0YW5iYWVVT0dXNllndWRpemJkdWVJSHU1N2dBcHN5UXV4T3hPcW1pZkJVQ2tzVmY0bkV5NWt2cHY5XC9xZmJcL1FlSWlLZWZHbnhOcGNmdGFZSUhEUHVFQTRLXC8ra0tmMTN2dDFPWmYxUnNwRmMwcURYRlJLa1RZSHJuYkdKUzBXNlQwc1BOd0hpRzVtRys0MEExRnhaV2hnaW1VRlE3XC9IY2JaZkh1NU1xOXNsVXlzWmFySStGQWVrTkw2TzV4SWhaeEJHYklkVzdpbFNwY1Fvc2FrMmxLQVRtd1NLazRmbmhlZW53RlJDZitsSkVySWRscW1rRkFlK2dvMWZKMHF4SWR3UVpPOHpcL0hkQVwvanRPZWExN2ZhRTEzN1pvVHBydm5Od0tPQzFLUkJ4QlNhYzEyT1ZzOFZWeEtiUHZGUUtUREhQcDdqenNUUWxiOXhGM2NaOUtSV2t6bEp4RlozMXUrYzVuZ2V6eUM1MUpxdXJsSDlWSXdlQ1k3NnZFOVdabUJyajg2eFE2bWxFdEJFTkZvK1lTa0dXN3I4XC9yWmxMcmFNSXQxN2ZkSXFjeVFlQk1cL2FCaVdJSDBtcDlrdHNONUhqMVlyU2Y1MDZTV2pKRG1wXC9CWjNFMVprdVYrR2dkSmZwZUlaQXpqYTQ4VWZ2U3hQd3YwMXRLNGR4SVVPZmkwbDlPQjNhRXdoQVNRbkNaYktKRGM2cmtrdnhnZExwK0FFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmZjhmb3JkZnhKRjN2eGlZQWQwNjFyVUVXVmprR05SME9wUmNWOFFnazVkTU56R2V3T0R3QkdCWHpZaW92NGxlZEdaaTRLQ1lwcjR4NnVqUTNMZ2ZcL3JcL0RUaEhWVlMwanVGTVwvQkRGZ2MzNUdMOHRRODJDQTNKZ3FRWngwZjdUbVpxb2hnUFBncDNrXC8yZzVHXC92dDBUSXlGVU9IdzUxd3pPXC94NjZCd2dtKys1NjVXUzA2UjhsK0dMTHcxR2wwWmtuejB6c2kwR0d2Z2Q2WTRcLzh3bHdaenlYZEdwa2h0VzVHMFV4amoxWnlJVWlZaUQ0QVNcL1NJSEJ4MExzSTR5WGtUMjJhOGR1dGt5Qm5LVUZmdW9UR3ZHQmFjYlBQZkwxZzdCVTJIZTNDcXFhZzBBYjNxZk9GdU9hWjQ0MVowdTlwYzB4MHhkY1wvVDNxOFIwcm1RSFVvbGVISWcrVjVid0VzTmkzS0xnNVpXWFwvYnZVNkY1K1wvXC91ZkI0emZlMmVKVjVRS0pcL3dHRURTdXhnMWNZQlg0UFBMeWNMNGEwdGw0V2RqczAxNUU1YkJuT001SERlRG1kTjRlUjZ0VEdaaitQXC9uVkRRTUJGUDFvVEZqeTVTSEFGNHVyUWg4aHB5UkE5OTJNd1drdWdHYnBRQ1FjK1lpdlM1cHhIMkpUcWE4T3NYRlVuNEZjXC9aZmJGNDB5cGhIeE5mVjk4ME53Q3dqMFpWYWJYK3ZkKzJhT1VIWXFYSXdtaFwvMmYxNlwvXC9yWVk2UkpWZVBiU2V2XC9cL1wvcnNBbUdOVHplM1JzNWpPeGNhbW9SME9FbVJ0eXRlcEJhRWVcL25rTmNDTHNGaEYyVHU3dWhRUFRTb1VmTWVEQXBUNXNlMXpOTURVN3JDcnVNUitNNURPU3BYK1czU2FSQllDeW9laXZOMTNkUjVwayt1aVFnRXhzeUlJNm55a0Zoa0pjTVwvSEtnTWhCdUNWNlV2OEJoZ2h5U0dTXC8zNTV5UXB6Zmd4QmkwZWs0MDNGV1BCQXc4dWxmNEtXcmI1MHdhc2ZpdlRUUFwvS1F5RmtscFExclgrMzVFcTl1T3FPY1RLbTJ4dXZkcU1SY1ZHYklJUDJGKzFtdEJZWDE0dFRrQTQ5UU5XTHQ1eHVIU2R6Q1F5NExDbnpXcnVYclhkSTNaWWRjRjMwWlBjZGJwSzFYRllwYWtZb2ppT2syUXpTVTJSNDVpcWNRbEZ1eG9NSHhzK2lMMW4zdnRPenlUTlUxWFplcGtLazMxSWxKM2FUS0tZaFRmZ2hEV0pIbTdKY2xlbllndk9ibVo1czVJMzZONEZEc29jeEFWNStjMDE0WjQ5dEgwZXRVQUhFcVRIcFVkNVlGYk03UFFuTFFncDQzelRON05VRHdQOWhyWUtndVJYXC9iMldxcnV2aXlPNE5acktXSnF0d215d25xVDlOY2pHUDAraEo5aFZ2ODZ6aFp1R2paTlZ5WkdDajFwMHIrdGJIcXVmTjlSeFNjaGNNXC96VE4wUkRtZmZ3VVwvWjNna1wvcXRqREZldklra2k2VGlZYm9MdWduYzZaRXMzZ3BvK2dDbGdtSFo1ZEx1c2N3TFU2RWpDYWlab2oxMktCaVJ4VE5QekVuT2FScUsrWW5XQ0tUYW1hTW5ENlNPNXQxU0xJaTdOZit1SGtMeWdYclpcL3paV2hcL2FsRjFuaXdtRHA0TnBaQU82ZWZPQzhRXC9peGFoRzZ6emFHcU5JNWVVcEtORDJCK1VrNDVrT2dKQ2ZmZ1BMOFhIUkd6ODh6MWxjK3dyblYzNWJ3MmtJaVk1ZnJmMXZ3U3pqRUZTMU1RRlpWckJEVG1Qa29xMFZTR2RqYTFMbVA4aHRPWWNZQ0FzM2kyWDlHeHdPT3ljQURDWmpiV1Vpa2J3a25XQlNBZjFsRnJoMzl4NW1lNzh6T3owZlNQT1hcL2QzQzNweXNLNXUrekFNaVBjMnZMOW5XRnBHXC8xSzNzMXh3YUlnYVM0aStCV3ZsTzFpOWlORXpxQTFib2NUVTBxXC9LWDN3RTlDMDhqOFNyV3NpNnlqdXpqRnJVNXN5SDNHejhsSGdzdjRRVG5tZjhMNEFRRFI1a09qUldxUWtBckdQUTBFNDVwRGFPNXNLMklTeHdnTklwdUt0SjYrOU1GTTd2WUdySEI5SDNKb21yWjhGRUVqS0tQOGNVSTJ3ZUlCOUxzRXBRSnNrTWRLd01EZElpNGRQZ3p2UmFFMll4d0h4Smd0V0dPZDVZWlRvY0hoYUJZbnIyNWR4OGxLRjkxQzRMb2hPemp6ZDFKQ0RKRHNPbVE3RlJaTnNuejBzODN0VEZmakhjelwvWkJ1YUFQajB0eENMN2JITGZQcm16aWFHdWY5d1E0dnhxVzBpQVI1Q3ZtaWQrQlZGSkl6NjRHd3cwR3FUaG5IU3lXUlhZWmVRMURTRzk4b3JTdGVhOWdZRXpxeThLV3dyaFwvcmhTckRzQzFiTitwWmZaYnNsRVlnQjByaUZNTDIyb3dpR2lqdytuN2RKWkN5cDJhYmlmRW9jUjI2MGZmTXhmS0pRQnZjNWFQcUdwK2tBNG5hK2w4R3hITFwvK1l4bjZTaVNmZ0Q1ZFZRNiszbmxoY0d0QlpCdXQwNEtSejdDU3pRMGtFeUwwVDdNUEciLCJwYXltZW50TWV0aG9kcyI6W3siY29uZmlndXJhdGlvbiI6eyJjYW5JZ25vcmVDb29raWVzIjoidHJ1ZSJ9LCJkZXRhaWxzIjpbeyJpdGVtcyI6W3siaWQiOiIxMTIxIiwibmFtZSI6IlRlc3QgSXNzdWVyIn0seyJpZCI6IjExNTQiLCJuYW1lIjoiVGVzdCBJc3N1ZXIgNSJ9LHsiaWQiOiIxMTUzIiwibmFtZSI6IlRlc3QgSXNzdWVyIDQifSx7ImlkIjoiMTE1MiIsIm5hbWUiOiJUZXN0IElzc3VlciAzIn0seyJpZCI6IjExNTEiLCJuYW1lIjoiVGVzdCBJc3N1ZXIgMiJ9LHsiaWQiOiIxMTYyIiwibmFtZSI6IlRlc3QgSXNzdWVyIENhbmNlbGxlZCJ9LHsiaWQiOiIxMTYxIiwibmFtZSI6IlRlc3QgSXNzdWVyIFBlbmRpbmcifSx7ImlkIjoiMTE2MCIsIm5hbWUiOiJUZXN0IElzc3VlciBSZWZ1c2VkIn0seyJpZCI6IjExNTkiLCJuYW1lIjoiVGVzdCBJc3N1ZXIgMTAifSx7ImlkIjoiMTE1OCIsIm5hbWUiOiJUZXN0IElzc3VlciA5In0seyJpZCI6IjExNTciLCJuYW1lIjoiVGVzdCBJc3N1ZXIgOCJ9LHsiaWQiOiIxMTU2IiwibmFtZSI6IlRlc3QgSXNzdWVyIDcifSx7ImlkIjoiMTE1NSIsIm5hbWUiOiJUZXN0IElzc3VlciA2In1dLCJrZXkiOiJpZGVhbElzc3VlciIsInR5cGUiOiJzZWxlY3QifV0sIm5hbWUiOiJpREVBTCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQVFPWGZ5dUpkY0wwdk4zZ09lUEw0UVdXUURXWmQwTEdQWGkwQzNtVkY2eU5JVnRHeGlVcGR6STFVYWtrUWJZSG44WUw3VHI5VWZTbkdyMTFodkJ6bHRHYm5WUDFWdXN2YXNuOGdcL0VuMmRXV0hkUDhub3hFckFJQ1ByeXBpRzRWWjZycVwvYjdHaVRFdWlXUkxTWFUwRm03VG13Yldmc1U4eGVwVHJkRExvditSN25VT1hxOWNaTVp0c2RFV0R4WlRTNjc2VlJ2UFB6T3ZtcSs5Vk1aUEthcVNPZEZaUWVtWllKaVRVR250VEh0WFQzNzhqVVdTM3B2M1YzQml5VXkxT2xnU05jZkFlalZGZ3BadE1Gd1MxRGY2cndDaSt1WXZtajArQmhJZDN4TFBGWEkxcEcyVG1wYzQ5MVgwQm5wQ1QyNXJFU1BkTFpFR1k2WEFlVWs0RWJmQkRTd2pFZkdrUmQ1Y29hcFVPUEQxTmxFWWxvVytkcnFHSlNrOHh6NmEwSWtxXC9udzdnVldVRHFydVd3NlNQWE1FZlZBakdJdEhPRG5XZFdYcmpMVFF1aHUzQllyTXk0eGNod2sxeUttSkJuS3NkXC9td2czcHg5ekxab2pBZkUyS2lzRzFYMUFteTVqSE1ObkxFRkFreXdUcVVNRmNDOFY1UlNTM1M4dU1nQlNuRjVKQ1ZLVFFiK0tDMEtpbFJ1cTY4VXRsQmsranZ6a1RHY0NRck9scTg3TVFXVmJwXC82TXU3Tmc0VDI5VzREMU9YZzhrOWJwM0JwTnorOGpJNnZpVWx3bDhGUjJQcnVtTFplNFwvRGhmbkgxbUhGZ0kwKzdIQ2dOZllYY1VkdklDRmtiaUVMUWNQMFBQc1ZYcnM0STdhQm8wbWplUlc3Y25jdWo3bzF6dmFSQUN5XC9WQ0VYS0VPWjEwVWFnbmE0WUFBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZmJqc0UzalREZHRqY2tXQ2Z2d1REdGhhXC85QWRuVHBFNlZcL1RCcUMxOStiQlVpRnNXKzNrUmJYOGpaUmdiSGJiSTdcL1ltQT09IiwidHlwZSI6ImlkZWFsIn0seyJkZXRhaWxzIjpbeyJrZXkiOiJlbmNyeXB0ZWRDYXJkTnVtYmVyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkU2VjdXJpdHlDb2RlIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkRXhwaXJ5TW9udGgiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRFeHBpcnlZZWFyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiaG9sZGVyTmFtZSIsIm9wdGlvbmFsIjp0cnVlLCJ0eXBlIjoidGV4dCJ9LHsia2V5Ijoic3RvcmVEZXRhaWxzIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJib29sZWFuIn1dLCJncm91cCI6eyJuYW1lIjoiSGl0ZWxrw6FydHlhIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCWm9zVDVSMStcL1M0ajRIR0VOV1dBXC9pUGVRZmtqeHVqaHRPTnBQYzQ3aGF1VHpEYWVxV0hKVmhcL2htdTc1NUJwV2pVXC80WE55ZlBYZWRGT0hSTkNWZzJyNldya1lNeFMrK0FHeUdzTXBqdXA0Rk5uYjM1cGtXQ1pFazNtZXVvaWpodlRxYnppeVpFclVDNTI5TDIyQmdtbUg3Z3BheUJUSkVmMkRTWW5Uc1N2NTJBNWllSjdiUHJvY2IyeWxHV3lMMFZoWGR3UVZZZlZkd29ZWGJhVlwvQVp2dTlzNXRmNzlFd2Y0bXQ2Y25BeXRFa0pTWGdaNEdPZUZIdEp5UGRxcjlwZVwvd2pBU3JvZzdYTVMwRXpoWjdyR0k3ZUI1NDV3R0ZpandtblNsc3JGMEpLTThuRWdmVEVuU1c4czlhckVFd0M1Q0g5dThhN2FoZ2ZrY1I1Rzh3a2E3OGJkOG0wck9oNzFnb2JhWHF6c2g2bkRMSnhvVkpJN1FGNXAxQW9vVEpKSmlsOFE4SFpkQmxCRmZ3QlBXSElhV29uODE4SkNnTkxuaHljSXBMNHBKNXYzNEsrbGg0TlE5STRiZTE3VjN0RkdBWHZYRmlHZUJNUDQyZU1UWGhHd3R6T2d5d3JjS2NMZGNyemxseGxIYUs0UEVvTWtoZUpGNWhzbU1RNTh4VzBuWit6RXdPa09IaDZzMENGSFIrRlR0SEp2a0hxV05BVzVMUTBsQ0VtMTdxd0crN1Y0S1oweDdmSVlOMjJ3QW1zRzNRc0pPMVFpM3FvQkJabmNDNnBwTGp1SW1BZ2hjT0hCd3V1Qk51RFpoVkVRcTJNV0NLdFFINGFtQ3ZnaGhCa01La1IreThvZEVHNjE4Tk9FZnlGbDloZVIxM1ppMnBDK0FcL08rY0N6Zit4QTZ4QndBditMckVwQ1NUamRlZm5BTEFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWG5nVjlFMUl3RFREMEZvOVwvYnVwR3VzbzZERnlabGowbUk5ajBQTHQ2SGFmQnh0bk1sK29IVkJidWtaZmoxcmo3QjZzZU09IiwidHlwZSI6ImNhcmQifSwibmFtZSI6Ik1hc3RlckNhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0NDb2dudm5LM3lkWVBGb0ZLR0tKRUpsZUlrWWJLQU4zVlZnNVdYUE5FMXVkMDVLUnFnc05WZHZ3dXU5TkV3cGtiNFV1dEw5S0JVV0EzZmVvVEJCQVdWSnQxcXBnWlhGK0paT3pmSjZCU2MxYTB6b3dDTVF6Nnd0Q0lcL3RXQnhLeGFLRmFsakF2MzBqZ2EzK0pDUWtwVVwvNGdxMnVic05XY09XSldERkV2SDE1V040Z3VuZ1plYlF6UzIyMGtPZnd5ZDZJUzhUbndFV2Q1cWc0MHJ0MHhEOHhCYVBvTllkNUN4XC9DOTJpKzZQdEp6SVgyU1lCakdqRzdkWm1Lbm85UlRYYXdoa2pKbXNzRXZGR2d3OVM5VStcL01Zd0tCZWxcL2RhS0JUSTFjK0pJYzR6cWQ1MjNpZXYwWUNydU5MSHY3cE80TVR5MFZYUndpekNCVVJKWjhac2tDVWJETThGRlB3eGNlbDdDbkY2dHM0UjBibG1LS1pDSnI0VmFYM3VJbmZFVHk2eFwvcVVVTGFTYXRtRnVzRHRlUHlRRHpaQVwvOGMxalgzVXE4OTZtbkdpMm5zSzBERGVGekdtUEExcktFZzc3WUdQdHUyTVJMKzdcLzlkNVdPb3FCelRlOGg3U3AwdUFQOG13eDF5U1hxOWhkZjh0a1hybkIreURQK0RjQkEwK3NCTmR4NlBvY0JDYVBmSzRyd1haYW5Sd0Zpc1pUMnZyVjErZTRpS2RCQU9FeExtN1wvbVRsbWhEOE9wWHVnSmtadUVZOUs2MzRhRGNhTllCOGFLMWZsRDVKN3krZWlmUTB0dWMxOGJyQURsSlhJcXBWeDN1UFF5QTZCUDFkTldcL25JRlpCVm5heXoxbFpYRXJMRUR6ODk5ekIrK2tSRlVLYXFXQWRHUlVWVTNEZ1JBcHBPWDBFSzZPaWFzTGtBMllkc2RrQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZacndRSHpYT1hWdnhHbnFkNUNmNzVnampvTWtXempnQlNEVlV1N2lYMTJtdjVWTjFOTnVwVmxkNFQ1UjQwQWlCUT09IiwidHlwZSI6Im1jIn0seyJuYW1lIjoiUGF5UGFsIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdDTm9rWktsRzFNVDNERHNVa21DMHd1SDg3QTNjQ2wyT1pHUTh1dTlPYzJuYTRzZzFsWU8xOUpMV3FvODNmTnJxMkwrOWNhR1wvNnQ4MDJTVlF0RDJ5d1hVZUVVXC9KaWZ4WEhiZ0Q0emdDNkkyWHJKQjJCckFWbGZFdStOaTJNa210eTZSODlvd1BvRDRCSDJCQmduYjZwS1liZ0hKUFA5cUpqNFREXC9vTnN0MnNNa1NYUE5KdjV2NzVaaGhKcGtZTTJNT08rZVNnTTkwMXNzTFdUOWxqN3BwYmlhdnFvTzhscEdETkhEXC9Jc0pFcUd2V2hwSVhyT0ZMTUF4NkZzUzF4blRsam91UXYxa1dZR1wvcDVlc3ZwR2VuaFdRa3JlVWwzdVlmdjE3MkIrM3BScEN0SENMOHFNZmxCK3BkWUtMNWM5U24zb1RmQ2QzWXRtSU5PdEVNVmNIOHpldzVWWTZqcjA0eXZjMXg4c1VZY2Rob3ZZZm04QzNrR3VERytURWZ1ZXQ3UUZlUmNCeFwvenp2XC9HSXhzeHFhSldBMm1KRVFOcWpNYllydjFQelFMQTQ0R2NkZ0ZJNnhwVFwvQXdOb2o1TUFMTTZHWUtzXC8yXC8wVDFsWVJoXC9cL28zaExNeDlSXC9YNVF1aXVmUWE1em4ydVpDeWlOWEVEYUoxYkxOUTBnR1EzWCtka0NsRWZpZEQxb3hmYXU4dWFuZlFcL0xaTnNGV3ZXUzlxYUV5TFNSQllFZlFERFBNWXVqRnkrQzgwUEQ1MXJET0cwbnNwcEtMSjg5a1BSOE0yRjNPR0U0UEcyRU5QT0J0Qkh1WXRuU1lUVUZGdzNqU0wzb1orTythM1JCRGxVUnA4UWR0Z1pQWVpIRzZXQkliMEFpTjBXSzFYYytpM3NaUThzK25KcnNoQkJSUkJka091M3JRdmN1VFgwd3prVnJjT3FBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlVuRjJ1cDduMTdGTWVZQ2dzV2g1eTcrSGFVTXNsQmJcL05RdzdjdVRGV2VLb012N0NMVFU0SE54dDFiZGtZSEMwMERTRHhBPSIsInR5cGUiOiJwYXlwYWwifSx7ImRldGFpbHMiOlt7ImtleSI6ImVuY3J5cHRlZENhcmROdW1iZXIiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRTZWN1cml0eUNvZGUiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRFeHBpcnlNb250aCIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImVuY3J5cHRlZEV4cGlyeVllYXIiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJob2xkZXJOYW1lIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJ0ZXh0In0seyJrZXkiOiJzdG9yZURldGFpbHMiLCJvcHRpb25hbCI6dHJ1ZSwidHlwZSI6ImJvb2xlYW4ifV0sImdyb3VwIjp7Im5hbWUiOiJIaXRlbGvDoXJ0eWEiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0Jab3NUNVIxK1wvUzRqNEhHRU5XV0FcL2lQZVFma2p4dWpodE9OcFBjNDdoYXVUekRhZXFXSEpWaFwvaG11NzU1QnBXalVcLzRYTnlmUFhlZEZPSFJOQ1ZnMnI2V3JrWU14UysrQUd5R3NNcGp1cDRGTm5iMzVwa1dDWkVrM21ldW9pamh2VHFieml5WkVyVUM1MjlMMjJCZ21tSDdncGF5QlRKRWYyRFNZblRzU3Y1MkE1aWVKN2JQcm9jYjJ5bEdXeUwwVmhYZHdRVllmVmR3b1lYYmFWXC9BWnZ1OXM1dGY3OUV3ZjRtdDZjbkF5dEVrSlNYZ1o0R09lRkh0SnlQZHFyOXBlXC93akFTcm9nN1hNUzBFemhaN3JHSTdlQjU0NXdHRmlqd21uU2xzckYwSktNOG5FZ2ZURW5TVzhzOWFyRUV3QzVDSDl1OGE3YWhnZmtjUjVHOHdrYTc4YmQ4bTByT2g3MWdvYmFYcXpzaDZuRExKeG9WSkk3UUY1cDFBb29USkpKaWw4UThIWmRCbEJGZndCUFdISWFXb244MThKQ2dOTG5oeWNJcEw0cEo1djM0SytsaDROUTlJNGJlMTdWM3RGR0FYdlhGaUdlQk1QNDJlTVRYaEd3dHpPZ3l3cmNLY0xkY3J6bGx4bEhhSzRQRW9Na2hlSkY1aHNtTVE1OHhXMG5aK3pFd09rT0hoNnMwQ0ZIUitGVHRISnZrSHFXTkFXNUxRMGxDRW0xN3F3Rys3VjRLWjB4N2ZJWU4yMndBbXNHM1FzSk8xUWkzcW9CQlpuY0M2cHBManVJbUFnaGNPSEJ3dXVCTnVEWmhWRVFxMk1XQ0t0UUg0YW1DdmdoaEJrTUtrUit5OG9kRUc2MThOT0VmeUZsOWhlUjEzWmkycEMrQVwvTytjQ3pmK3hBNnhCd0F2K0xyRXBDU1RqZGVmbkFMQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZYbmdWOUUxSXdEVEQwRm85XC9idXBHdXNvNkRGeVpsajBtSTlqMFBMdDZIYWZCeHRuTWwrb0hWQmJ1a1pmajFyajdCNnNlTT0iLCJ0eXBlIjoiY2FyZCJ9LCJuYW1lIjoiVklTQSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQlN1b3oyOU5uUWFmSW9ObmVSS3k3emJiN0lxWkxYNlpWOHZGWjNOOFprcmtjd2ZNcktzZkhlc0c0UWVoOFI4N2phV2JvSVR2YjdtdXJhVGJaU1RGYlVMQm55SWxLUzhqN2c3V25LdXhvVEY1NDFhaUVqUkdjRjhHKzVta3RQc00wOXdGY2dFS01KdUk4Q2J6dHJqR01pcnNhOExJTkFxcU1sSndzdndKcU1EbUJqajZTK2xFbXE2ZHhHTklqQlpzQmVTcXNpaE9mWjFVQjRKelwvTmU2Z1d3dmhsNWdFYWVnZTZtZER4c1wveVwvZ1wvOTNNbDdYeHdrR2VlZGJoNDNMY0xQZzZsTFBNMVFWNU5RN1F0MXZXQUE5bXcybTlldjk1eGl0a1pSTm9NWGdRdWtcL005a0R3b2ZXVmttZnhVUDhXOG9sS2pqSzBwNHJRQUVwVCtPUlQ2UlBrcE5CcHpWenZFZ3dGVXBacjRYUCtMQ2FzamYxNzdzTEwzTW9aVUo0Zlo4UWZYYVBMYUlxXC9uWTJGRkVTSXRPVTFab3RORlwvRUFzSHRcL09IZDBacTlSU1RMZVNPZkdNRGdvXC9pdGtTOWRXclFPb0VkWVRcLzdwbFZ4bktvNDZlQUJDNGN2VG40RzFzNkNkVEpZZ05Ya0FcL0ljTWMzbWFGdnl5ZnpOY0RHaWhGMVZ3cE1wV0VEZytJNWlzNkZaQlU2SUtKSFhWRUVSbXVMU3ppNU9JbUNuNENXWEtYWHJNNCszVTgrT3RVUXhOK3BLQlh2eGFQMWVoOFZpZ3RXbXJuOTRNdHZTV2xySk9PRm4xNzhjVlwvSHFaTmtcL0NPZjRocUM4cWlsZnBTenZrTXRlZzU5TjBzTFExaE5WMkZsTFpRancrUFR6dVwvZjhvblY4TThFdXU1RFJrZXhDc0w2eVhTRlJxdXJyVGRhYmI2ajhOQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZRUkMrTFJ0SUVIbnQxVDlBeXE5c0E0a1dINnlGXC96MnZkRWw2Zk1SXC91RTJcLzZTUlhKdmQ1RHFwUGZob0xOQlBlWWpKIiwidHlwZSI6InZpc2EifSx7ImRldGFpbHMiOlt7ImtleSI6ImVuY3J5cHRlZENhcmROdW1iZXIiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRTZWN1cml0eUNvZGUiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRFeHBpcnlNb250aCIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImVuY3J5cHRlZEV4cGlyeVllYXIiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJob2xkZXJOYW1lIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJ0ZXh0In0seyJrZXkiOiJzdG9yZURldGFpbHMiLCJvcHRpb25hbCI6dHJ1ZSwidHlwZSI6ImJvb2xlYW4ifV0sImdyb3VwIjp7Im5hbWUiOiJIaXRlbGvDoXJ0eWEiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0Jab3NUNVIxK1wvUzRqNEhHRU5XV0FcL2lQZVFma2p4dWpodE9OcFBjNDdoYXVUekRhZXFXSEpWaFwvaG11NzU1QnBXalVcLzRYTnlmUFhlZEZPSFJOQ1ZnMnI2V3JrWU14UysrQUd5R3NNcGp1cDRGTm5iMzVwa1dDWkVrM21ldW9pamh2VHFieml5WkVyVUM1MjlMMjJCZ21tSDdncGF5QlRKRWYyRFNZblRzU3Y1MkE1aWVKN2JQcm9jYjJ5bEdXeUwwVmhYZHdRVllmVmR3b1lYYmFWXC9BWnZ1OXM1dGY3OUV3ZjRtdDZjbkF5dEVrSlNYZ1o0R09lRkh0SnlQZHFyOXBlXC93akFTcm9nN1hNUzBFemhaN3JHSTdlQjU0NXdHRmlqd21uU2xzckYwSktNOG5FZ2ZURW5TVzhzOWFyRUV3QzVDSDl1OGE3YWhnZmtjUjVHOHdrYTc4YmQ4bTByT2g3MWdvYmFYcXpzaDZuRExKeG9WSkk3UUY1cDFBb29USkpKaWw4UThIWmRCbEJGZndCUFdISWFXb244MThKQ2dOTG5oeWNJcEw0cEo1djM0SytsaDROUTlJNGJlMTdWM3RGR0FYdlhGaUdlQk1QNDJlTVRYaEd3dHpPZ3l3cmNLY0xkY3J6bGx4bEhhSzRQRW9Na2hlSkY1aHNtTVE1OHhXMG5aK3pFd09rT0hoNnMwQ0ZIUitGVHRISnZrSHFXTkFXNUxRMGxDRW0xN3F3Rys3VjRLWjB4N2ZJWU4yMndBbXNHM1FzSk8xUWkzcW9CQlpuY0M2cHBManVJbUFnaGNPSEJ3dXVCTnVEWmhWRVFxMk1XQ0t0UUg0YW1DdmdoaEJrTUtrUit5OG9kRUc2MThOT0VmeUZsOWhlUjEzWmkycEMrQVwvTytjQ3pmK3hBNnhCd0F2K0xyRXBDU1RqZGVmbkFMQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZYbmdWOUUxSXdEVEQwRm85XC9idXBHdXNvNkRGeVpsajBtSTlqMFBMdDZIYWZCeHRuTWwrb0hWQmJ1a1pmajFyajdCNnNlTT0iLCJ0eXBlIjoiY2FyZCJ9LCJuYW1lIjoiQW1lcmljYW4gRXhwcmVzcyIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQkVHdnJ1Q2pDSTB2N243YWlIWW5SS3dFeHR5TUdcL051MGdXMVM5eXFjaGFXR0Zib25jK2g0c1pmOWRLNjBKNmlTaWJLV2hqdVlvbGtVVnhcLytHd1NiXC92ZFpOMjBtSlRsclhFRVBBeVFJNHFNSWI1UVZLYVwvV1RWYlpkZU9wOWtEaENibjhmQkJONThZXC9VazBUZEhPSDR3Znoxck9ZYWZlcnI3aXVjUEpYWkI4YnlhZ3ZiVUZ2endwUzhHem9ES3JwNlhOZ2JLa2QweTVvRWVFMTdDbDBkM2ZHZ2JDSmtcL0I1RFwva1RZRXVBenFHWlVBMGVLUU9rWmZjbmMxSjA4YUROTEs1R1BOcE5qWmR5Mm9lWUFtc0xaWTNadWJlMW9ycmsxR3NWSVQ0SjBCV0EyZndcL1RmR1B6eE1zSlpjN1NmbUVyWlN5SkVXcERacmFSWUZJWE1aK0lUNWdGWXpPUlJra01GeXFodm9VQ0dUeUsyalJaemswMFhDak1aUmtlXC9mQ2U1SFgwZ3hEejh6QkRXcENSNmVrdmZrNkdLa0t0YUtBdTV0Y1FqRklDYXJSY1gzd0lQTlloeHJ0RVNpV3R6VHVnam5IMVpNN0ZxYWNkcko5MmNyc2IydThmNXV4UE9TRk5qSndwcmtYWElkaVNZeENpSnN6XC92TXkrdXN2ZncrdkdDVXR3RGFCWHp2V0FmM3lZdnI2Wkk4cjNSeE1SQkZ2RnBuUkhwTURodVZHa1YrM1MxSFVXVjh4RXhxN011WTRqRVBsV1Rzdk1cL2VaeVhtTGc4TzNNS3ZZaW9hcXZVRGE5a2VjQjVhQkF3Nnk4K2xTV2dHVjFjSHlQbDJSaXFVTlhkcno2K2ZKXC9LbVE1eDU3Q0ZndzR0aVBvaXZVSjB1VFM2OUY3VFpRam9oQTFRemNYdXRBV3RYekJnbFU5OTYzNUFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWmZEb0x1XC96SVNLRnNUb2gxYmcwRjhhUmxSRkdESHdxY1V4N2V1bTN5Q0xRRDIxY3FmS21yVEx5YWNybG81YU00a3QiLCJ0eXBlIjoiYW1leCJ9LHsibmFtZSI6IlNFUEEgRGlyZWN0IERlYml0IiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdDYndDVCtKTzhVRW94b0JQckkrcXlVUzR2UjVUVDY0NnYxTWlOXC9nVU00TVZtN2pla2s3V2QwSG1yamsxXC9ORWc3TlRBY3BzZlpEQk9jTWxRZXVUZURzRWFDNGtCZjN0cXN0dGZ3K3FZNlRiYUZMQ3RnTklyNXdKM2RtMlR3VmhGQ1lWTUFyd0o1em9CSXNvT05VV3BTS1IxMURZNnpFNXZ1RGd0aWZOQTBZaU42aDZyenE4TzlHdUNyQ3FVSmJ1MjNQTWVqREhBMHJIRE9LeXh5T21CWEhSdlVIaE5SMVwvS3d0cnZ4K2ZZQU5uQUhna3puVEg0bGRTWGN1YU1WdFpGcWNwSFpUaVlwTHYyeWRpVDE0UHppcGlPRHBSR2lYeTBuTzdiNU44UnMyN25ZeGxnSFwvdERjSTRlRjRqbDk4MVRQS2xGK3U2WEVPR200RWJ5eWFcL0JmVERwOTNyS1JNeG82S1wvTHJmSTlKNFdhQTJ0RVpvNmVHTmJSdUtQcEJsVjNBU3U3d3BDZlNTdzJOam91VlRDa2ZZdDgrWGVlSmVJSVlaMHA4QVdqbjRMVHdhcm1TVlo3Y1l3OWI5ZUNVNFhYXC9ScmNOZ29MRlBYRXI4dzBNY1VGMm4wR1ZXRE03UTViOVV0b1ozNnlrMTg1TFhtb011eVwvXC92YUJJdkU4bTdRbGdvXC9ZUk92OVVlbTZtdUx1NGhaelcrVitXRUtBbXdHTDBlSlpDZGpBZUdXejZjMG50eThQTk1VdjNwZjd0VGVZTjFnc3ZRZnFsaWozSUxzUkxjdzRrTll2RWxuR2xDdjhkZ3UzY3hsejZEc25NdXlcL0VxS1FNWkFJb1VDZDZlRjE5STNOZnZBbzJqNU1mcnBTS1MzUUdMVFA2VFhLcWdUTmI2ZDhzVkQ4Z1JLaENESzRBdlwvTjBwMkNIR05cL1lHNXhhQkFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmV1FMXC8wcnVBQlVyemxQdHg1bGxDNU1KcFwvXC9pQ2hEUFo4cjdsa0lmNFFielBQKzhFVGR4YnpOWlU0dndLVG1VamZmcExkUUEyYXN3S0V0T3pZTT0iLCJ0eXBlIjoic2VwYWRpcmVjdGRlYml0In0seyJuYW1lIjoiUGF5c2FmZWNhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0FJaFUzeEtCRjhRYm1BdmpcLzZPTnFJdnZDYk1yOThlcHk2XC9LSVY5dSt5SnoycFNqNFBvTURMYkp4VjVQWjFZa3hhYTlXald2VG5sWjlOZ2VCK2VvTzI2TWJtSW9Bc013OGtuamF5K0ZFMFB5ZzVHajBKWG85SWJlK0Q1MTNzZjRxS0Ird1FQWGZVRXFrbmlpdFRpOG8ranloYkIxMjNyQ0FKV3ZiWmZQT0VLRTFSRStGSFNFWnlWdkptSFFQbDV5OHZXc0NLQkhqeURLNW9MSmp0eERmYmRvUFJyTWMyb2dOc0dsZklcL3FwSUZXOEhYTlJLWHB6Q2orWUY0dmlmOFpuNlo4RWI1MnJmTlpJMTJ4Vkc2aFpubW94OEJtTWdtU25Ha0N3blkzTzNDRnBEVFpsQ2JKb1wvWFdTR2dFZTN4ZUhrN1BpWlNBalBPVkhwRERBTFJCXC93WlZmN1h6R1lxS2tpd3RqbnpxRjhrR1l5N1hVZHVMZVZGMno0Q1wvUXpnRjFEenF6SUE3TGYzViswVUJXaHBEcUhKQ3J3a0FXeVRDYU9YcnF3N1Q2NnBUN010WnI1VjNsR0JVcUhrOFRcL2hOd2N1emc5d3J4NWVIc2VcL3dkQzErMmVWYXkzaTBZV3lpa25cL3JZdDd6MWl5VFRJeXo5Nkl4eG95TUlxMHp5VUxrbml5bGNDc3BkMjBcL1hnTmhiclJtZEF0N3FQbUQ5ckgrQ3A3YWJJWGJiaUFNNExXZm45eU9Xc09zQUxTRHIyVEdaRGpzbU1JU0NYekxIVStTRE9ycDJTaUpSSjNOSE5zVHJkRWJYOEk2dzd6VGF2aVRzTk1FQWQwdDlnYnliM2tXMUYycnF6SlRcL1VQZVFiNU1KUVwvd3FHR1liSU9lXC9YR0U5Qkt4UW9sdUtMRmhCdjRoYVRLZXE5UnIzVnN1QnRkVXhvQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZldzYzSG9wKys0TitBaFRra2RzU0tHOTgwaXpJV09JQndScmZDSVI2WWxvRW5KWVwvODBoaW50VmtqWmNJekRvUVlGbmZcL3pFeGppd0lRPT0iLCJ0eXBlIjoicGF5c2FmZWNhcmQifSx7Im5hbWUiOiJCaWplbmtvcmYgQ2FkZWF1Y2FyZCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQ3BRUHo1WnIzREVUVGZTbXhaZU8xc2tlaXZNbklUamdNWE9BbXBjNk9IZFB0MDRRczBQamtXRlwvNytuZkZYRXlTNmRoWXc2YU9HSUZUY3I3UjJ4YXZcLzg4bFdEQ1VoUDFHN1R0VWw4N25wdUdFc21sYXFTMEthc2w2QkQrczVIUTFybHBsZmZmdXBEQmxGajNyZVBvekY0NDlnV29HWCtiTnExVmdlaDdTdEk3WEIxN0tcL0ZEcUVZUWkrTjBOVUV0SnBDRG90dFBvdXZvMEtnS3VFRDlyMFJRakFiOGszbk5FdUFGeGtMVENFZmdyUll2N0hQRGlsNGR4MnlxT2hzYnY2RFhmcTBrK0p4SUZJUjZIc2NSWG1nZ1d4MXl6b3U0TzRPQjVVZXBZQlNseG9KTUtxRVFYRlF4VVJrRjlSSThnT3lHKysyS1lMSEhvbFprcVJJbW54ZVNaODh5WjN6UDFlTGJhdzk2VG1zWGNTazJTamc1cVdFcjhScEp1TDlVYVhFcGFPTGFxbTZFMFFNWGtidzdBMjk0NVlNWVRjNTF0SUI4aGpZNEdPVnNvVnFrS3oyYzRNZDZ5emlLbHY0WGNmSTVjTWljMXJJOXEzeCtOVFNucE5BRUJZOVhzZkUzS1YrNWRjd0lVdklCdzRCR2tIOFdnOStOXC9XWkZlUkxES2dtRndaOGtrVFlNS2FheDAzb0hMUjVcL055Q0JYNkdpeVN3TE9xbTZRbEh0VElWYWpza2NXNXFRTzlnYnpcL0pXeEJCQnR5QWRlVGhFMVF2XC8wOWZaVUxOWVBaNUNnVG90MHEzMkl0Mkphc2hcL2pRR2YwbEtMRGpxV3U2WGNcL3JQZUZEazZNNWI2azhOWnFTaitmZWdISzYrTm15Rk16YUJMV0s4dXllU3pVQ2J4REh0STAyT0dQVE9JNDBpU1ZUblFmakFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWUV2bmkrd2liQzlzbzZkZVNXMGcyQ2FGNDJjZ3RUWVZjMHdvTVVEQ3QwZ1N2S0hmUGt4RUV4VDRydjJQajZ0Qnk1blRPcnZtb0k3M1J0UiIsInR5cGUiOiJiaWpjYWRlYXVjYXJkIn0seyJuYW1lIjoiRm9ucSBHaWZ0Y2FyZCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQVwvVm1aa1drdEJGNXdlb0haYXdsQW1oejlyaXZCUGgzZUYyNGN0N0pEWGIwdXZieFpDSjZjd2VJMGZUVStpNGl5RXhDdGhGbTdJNnd4Z1JMckV6bkg2MDMza2o5SitycjdkMzJCeXdQT3hOcStkdDN5RzNsWk5cL0xmTzExa1wvSGVNb2JYdnhVM1wvYWw0bnN6R1RYeVZNaUxUZ2Y4NHZ6eUNZWldpZlB4NnBha1dqTWVISTBxVFlGMmNiVXpzR3Nvb2IrQVVJaDhIQlEzY0hzOWVSVlRVSTFQOVFBRXJ6allDTnpGbGpqYXlGZ0c2aVd1enExMTNUcHVMdVNvQTNZSG4wOW1vWlwvQUd1NEhJVW5USzRDZnA5ZnU1XC9GTXpGSHpSeHpmMGp4Y3k4eHJXM0NseUhQdHRzSHh5dEFDQ3ZDdDM5eHlyeWlOY0hubW5aR3p2Y09iK1I4RExUR1wvalhMZTZLalFIZldsMVdqckNPSHI3NFBEQmdsWWYxd3ZpY1lqODhpcVFMSTZURXpKb3BjdER4bVdJNEZFeWZRdzdERVpYXC9Mb29xVlV3WWJsUnVWK2sxcWcyUlZKOHk5TmFKbjRtNFIzVGlcLzV5YzlXcTFPcnZwWVViRk1CNTZEdUNCbTYza25WM3NFRUZKUlNVdFZ0aTZ1RExQNU5BN2NZTTBOUldManl4WUJNaUlcL3JcL3pXT0VnK21ManNwdU84MGdRZWc2YUM3UHpmVlk1YmoyWUdKVlk2VG1TbVZkTlpBaXBhOXh6SEg0UnBCNVIxUGYzY0JUNit4Y2hUNmkzWkZWQzhWWTkraUN4eGRwRzRUWWVxY0xXNnBWZTloSEFlNnZxOTdHOCtGNkdnaHF4YjdaXC9EbHhJUFJ1dStENGxXYTJtc2hwR05VVGRiRjR4dXpoRHhpM1wvempGQW9SOGpQcHltYkpRWm9BRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlZVN0trSTUzMUc0bEtmTFdSWFdFcnk3cE56d0NNZnpBTkdTM1BHWmVZQSsybjMxREVod2F2WHNpUEJ2djNTeDMxVjRYQ1FpRUVVTkUwaz0iLCJ0eXBlIjoiZm9ucWdpZnRjYXJkIn0seyJuYW1lIjoiQmFuayBUcmFuc2ZlciAoTkwpIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCNTFEdXVqQTd2VWQ1SEVLRmJIcWZxYk92WG1tdGpQNENkVWkwSnJ1VFZZZGNNU3VLQUFUTGR6eUIzYXlONlY1S3J2VUtpdEpWM29ndmhOUHRKN2dHQktCM2lkSEJVYjZ2Mml5K1lFdnVUYlwvXC9iSjA0WDNPeHhJXC85ZjcwcXZWS3RiU2pwWGhnbUpyTzFFMGV2SnJJaG1sMTJzQ1ZUYUFMXC9wYXlraHpXRnZIek1tVVpWNjJLV09heVd5aU1FemNubmRiR1wvQ2tKNE9NZTIyaXBmc3VOcjhUVEVRd3ptQU1pU3Q3N2xEZGVOK3kwSml5UXlMSGZSK2dWNTdGQzVQRFlnUDN5bHBzbzRXMVZYQ2NHeDZqUkZUd0hoYitneUpmN0hxcldFcllsODNHaWV0d3VrTTZUQjI2MWNhZFQ5TkhiU2ZoNEZDVER2TDZ0d29SemhlZkdiUkR1TzV4dnM1NjlLXC9lOVZDU0VuZW4xRmE3dlpQMDRhemFaN21oZllVY0w2MENGb1dnTmtKdDdOckZsbVNPNzFCenB5dld3RUpZRm5oazh2TG1qRGQ4VXFpdEx5VjJocnVzbnlLM0VTSGlFXC9rMGQ1Q2JpbDNDQjNRRXlodzR6QzZXTXpYSXV0VE12TGFKeW4xM25SNFNHV2hPYldvbVhrU3ZYOU5LdjhOclp3eTJCWGhlUkF5T0hTdEQzUUxCT1JyQWlxOXBFV1BaRjl3ditlQkpGTm1ESENYd0s4OG5sS2JGS1Y0V3pUTzR2R1BiTlZHckh5TTlEVklSSHQyNW5lVlpCWWNER0l5VnJVSTl0eEJtM3JMNlFVcW50NGx5KzVnREZOTGpocEZzMjZta2NleDArKzdWZ3B1emNTOVdVT3VpT0lZNXVCcGxZUzFhUGVzeXhXNnVoQXlwUnZlczB0R295b1VlbGhMMFpYYkFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmYU9tS1RsSU1WNEQ5VEh6TkdHMW9Nc0piNlZSWnBJaUJpU0VXb3ZITGdJQmExd0hJM0gyOGplbnF6eXE1YSs3cks1WHBNaExwcTFpMExMdSIsInR5cGUiOiJiYW5rVHJhbnNmZXJfTkwifSx7Im5hbWUiOiJQYXRoZSBHaWZ0Y2FyZCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQWhPMlEySlR5SjQ0YkRBa1NRUWxrZ0k4Nis0SHpcL0lNdjNvOEoyWGs5S3lcL0NrejBiNjhTRHYzNVlob2xKRmxKZXpSWXJZV250elhmY2pjZnJ2K0hzUnFlajlBaWViOGJHbzFOclNTVWE1RkVwQlwvYUdYQVA1Qm40cGgyVXpwcER5QUNPT3k5N2psRzZDUGlaWloyUlBXOVwvMlNCUCtad2wzZnpFNFB5T040dU01cGlOK2I5YzltUUJsVVo1dHJUQWdjT1BCUGhHcGRlc05xT2tsc0hVWWVkcDA0QjVSSDRmeU1EUVRvdFA3V29IcGJwdE1UUGhMdXVObjlyRlJhSVpyZjRuK2huc2lHYTY2S25HYVwvTUswUktwd0k1dmdjWTdUSnQ3WW05bHF3Y25mandZU1c3M2hFZVpqOUo0cjFuaFR2YzFwOFNTbktOMndLQ3MrVGo0QmxhKzdwUHpKanhwaU5kZUVOT2orRFZLQWM0cWg3bHJHdkxzXC9lTTZzVHdybWs2azZicUQyVmZDN3lJbGNRdVdnd0VEeVUzQkVMa3VuK1wvS0Jmd0g3TzlxQzhZZEVRNmZ0SGtucTVxdTdlc09nbUtVUHJoMCswcE84UVNudXplT2JHY21WWnNLWlNXUEs4M1cxMFhVdGRcL0ViNTU3ZitFNTNDNXd1cmZNNmhsa2FvTEE5WHk0dHVxM095ekpTbitVNmY1am5ZcFdvUEZiaVU2RmZQSTU5NFZqYXNyRlppYVo2cFpGVnZxZTN6MDBzajdKM0ZFS3RQRHVBQmJnQ29zaGRVZXFrZnRVaDZoTkdjUDlZaWVIdEtFWHhxaVhGbGs3NXlKMXFaZUx2aDRIZUJKVXF3Y3RXZ3d5Q2lySUJxTVRJM2ljRjMxY2Rud01Zajl4NnBuSzU2YWhBQWNTZHpiWlBZaUxtTEJtSzJJRG53QUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZWU1dEdkU2S2FLQ2hDMkhVRUlsaXQ4V05qeTJ2UFVcL3ZlbytTUGpIUVhwb3JZbHY0MDlwUmUrT3R0K0lnVFhYYkN0V044RzZvT3JWSTFodCIsInR5cGUiOiJwYXRoZWdpZnRjYXJkIn0seyJuYW1lIjoiVlZWIEdpZnRjYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdBK0E0aWRUczNxUmExYXFQM0IwZ0lxcDFcL1hRK0k0djZha0Q2QUdtZ0g1c21velBVSzhmOFV6RlNCcXdncTc0ZkttTFdPajZTNTYzRlpIdmNTMkRkUEtTQVRsaDhiZEc1aHRqeWFGV2t5SHN1eWdhMVwvZlg1Y0UyRlZGVE5Ob0lzUzVlbEtOSE1ERVhrbzFuYXBnWXBySUpzMEdjdWduOHdGUlp6YmQraVZJZVBiaXlRcWxOZGdkY3JET01uY1RFc1JWUjdDT2VrZldCcG1za3pzVmpGZUc3aDlMUnFidHlHUTlweVwvdTUxTVVXMXQ1T0w1N3Z1eEk1bUU1UXFkTkV2SUcrMDRRZElhN0ErR3VaVHpMdm53Nm1EaWY1Ulp2RDdCTHBZbXZTQ0JOQ0hKTGg3Sll4SmFudGxrejZZcUJmN2NRakhCalpHTHZFbkRMSjl6RVVEajZBMXI5eklyUEcrRHM0MlB5UFBwc2tPWlNVUkdaZHlyWGNEQnJVNVVUb3lFeWxSaVwvZ3RuSE1hd2RIbnczVklEbW1UTldtNG1hNFh6UWdKTTB5ZFwvQWhaa3FMR1VXblBlTnFLTUloTlwvWk9ycWwzOVFlQjNhajM5eUFKXC8rWFlpUkZlQUdLK284NjVHRk9OYXc2OEpqTzhxN09PUEFEd2JER1VuMjRnM29UdEZ0YkR0amJ2XC9sOHJ2a0Exd2MrRFFvbUs2cGV6R2YrUDVoa0tRZ3liYXhHMXJ5Zlh5YU1RYnYxaG9qd1ZGUkM4dFdiVk95OWJCcUdtYlpiM3VlMmp0N2xjWE90eDB4VHN3Rlh6QjhDXC9Fb0taUTBIOVdpXC9IZ3N3WjR5M1N4ZXBOekQydXRyZWhuYnlXVnRaMnV5eU9NOFgrcVQ5aCs5OFcwVjB2RjZkN1RUWDJSQjB2dG1iR2N3SXBmNlNYVm4zOUNaRUFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWTBIYXp6UHBpNWpiZ1BmcU84aHd3N1lucFdlUmhTTGtid0pQUTVoWVpKWHNYbjFNYThybndwWVlpOGpmTzFGSktCcTBoaWQxemFwSmc9PSIsInR5cGUiOiJ2dnZnaWZ0Y2FyZCJ9LHsibmFtZSI6IlBvZGl1bSBDYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCendhUVUrVGc4SWdZNkxXWkZaUjc2NVJXNlpRMkRaWVUwRHRIcEwxUDNYWWs1VFB3RjdhRzdZYjVuYzZ3Rmt0MGtwVVN5Q0ZLTm4waCtMNjFYdFQrTm9EQ1RUWUNIZkE5WXRUd2IzNE5ZK1ltWkdkS2V1a1I3VFFKc2NLTlBFRnh6Yzd2ZFJYeEowdlRCdXlYaUxQMjdtczZkYjBlNUJ0QWZnRjdVbFZIb0JEaFRCbDBVWlNLOTdiMENSckgzb3JPNzR6K0g5VWplUDE0MUhSN3phN2F5OUprOWdYRXRnRlF4b0VqYWN2akMrSXVSdTZNWityZnJUaUFwa2NGY25hcDk1bXd4WVFkelBXa1pIOWthMlM5TkZWU0JUeDFnMUJtRm9wajduTlFCSG5ydThEWFZ4bkYyVEhKamY5TjlNRWxjRmNLbk1EZjQ1c3pvWVRRNmRXKzBXK3dUS2NRRVVMMDV5SWFVTHNZVGZxZ0ZlZ0tKdGRIQmFkR2dVWnU2ZDUzZENLNlRINWdUeFNtVjhneHVPTUZmSjFYS0pjakpcL1dXRmtnUkErOUZKU2Q5dnJHSHhWUDRaWEFFenQ2U3RlSjhFdzc2VnZFT2tBcDlLM2tBU0NMTXJKREtpZkVWN3RcLzVWRFFrUHpnXC8rRVdTY1lwd3REMFkxSFB6aU5hdW00eEVwSGxcL0l2YnI0MVpWRFNsZ2MzdTN6MEVUOVZQejZzV1A1OW9QWTBwV3krNDVYeUw1ZmlhNzI5dEpDTHhDUEM2SHhNVGY5WVI5RHRuZURBMGZRV1M4VTNBUzJzVGl3WWFzVmo5RVBPWTY2WUJxb0YyQTYxMjdsMDhxVjhPSmFaUzRlbkl2dVZ4dEU5VkdCOVpYVkJCOXQzR2VTaisxMjFCM2ZRcGN2V2JmYXZCQ21xdjlaMzdmM1lwaHZ5THJiNmdrRUFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWnFha0NwRzhVZjBBdGtweHRjZFVrTFR6XC9pajVjYlM5OWNUNThDcXduam8wbXVpcHh3ZjFkUk50RElBYWx1VnV5dk02SUhOR2ZxbCIsInR5cGUiOiJwb2RpdW1jYXJkIn0seyJkZXRhaWxzIjpbeyJrZXkiOiJlbmNyeXB0ZWRDYXJkTnVtYmVyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkU2VjdXJpdHlDb2RlIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImVuY3J5cHRlZEV4cGlyeU1vbnRoIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkRXhwaXJ5WWVhciIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImhvbGRlck5hbWUiLCJvcHRpb25hbCI6dHJ1ZSwidHlwZSI6InRleHQifSx7ImtleSI6InN0b3JlRGV0YWlscyIsIm9wdGlvbmFsIjp0cnVlLCJ0eXBlIjoiYm9vbGVhbiJ9XSwiZ3JvdXAiOnsibmFtZSI6IkhpdGVsa8OhcnR5YSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQlpvc1Q1UjErXC9TNGo0SEdFTldXQVwvaVBlUWZranh1amh0T05wUGM0N2hhdVR6RGFlcVdISlZoXC9obXU3NTVCcFdqVVwvNFhOeWZQWGVkRk9IUk5DVmcycjZXcmtZTXhTKytBR3lHc01wanVwNEZObmIzNXBrV0NaRWszbWV1b2lqaHZUcWJ6aXlaRXJVQzUyOUwyMkJnbW1IN2dwYXlCVEpFZjJEU1luVHNTdjUyQTVpZUo3YlByb2NiMnlsR1d5TDBWaFhkd1FWWWZWZHdvWVhiYVZcL0FadnU5czV0Zjc5RXdmNG10NmNuQXl0RWtKU1hnWjRHT2VGSHRKeVBkcXI5cGVcL3dqQVNyb2c3WE1TMEV6aFo3ckdJN2VCNTQ1d0dGaWp3bW5TbHNyRjBKS004bkVnZlRFblNXOHM5YXJFRXdDNUNIOXU4YTdhaGdma2NSNUc4d2thNzhiZDhtMHJPaDcxZ29iYVhxenNoNm5ETEp4b1ZKSTdRRjVwMUFvb1RKSkppbDhROEhaZEJsQkZmd0JQV0hJYVdvbjgxOEpDZ05Mbmh5Y0lwTDRwSjV2MzRLK2xoNE5ROUk0YmUxN1YzdEZHQVh2WEZpR2VCTVA0MmVNVFhoR3d0ek9neXdyY0tjTGRjcnpsbHhsSGFLNFBFb01raGVKRjVoc21NUTU4eFcwblorekV3T2tPSGg2czBDRkhSK0ZUdEhKdmtIcVdOQVc1TFEwbENFbTE3cXdHKzdWNEtaMHg3ZklZTjIyd0Ftc0czUXNKTzFRaTNxb0JCWm5jQzZwcExqdUltQWdoY09IQnd1dUJOdURaaFZFUXEyTVdDS3RRSDRhbUN2Z2hoQmtNS2tSK3k4b2RFRzYxOE5PRWZ5Rmw5aGVSMTNaaTJwQytBXC9PK2NDemYreEE2eEJ3QXYrTHJFcENTVGpkZWZuQUxBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlhuZ1Y5RTFJd0RURDBGbzlcL2J1cEd1c282REZ5WmxqMG1JOWowUEx0NkhhZkJ4dG5NbCtvSFZCYnVrWmZqMXJqN0I2c2VNPSIsInR5cGUiOiJjYXJkIn0sIm5hbWUiOiJNYWVzdHJvIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCcWpiemFwM1ZFSTFVVERBVitZQXhpNjdVSElBWG9YQVFZbDlwUURQOFBHVFZudmQ1V0dEOE1GZ1VQWVVTejN6akxpUm9tWmlyTk53RWR4bnMzZ2xPTHhuYmFzTWU5Y2l0NUNiRW1QOWdadTRNTUNvdXV0WmcycWhoclBCTGV3Y1wvUktKSlBldEtValcyVzVnSFhFVWNYMXRkdDYzc2cyWjhvNWczeTUrV3FIMk5ub0hBUU44RFlYWjhXM2pBY2x0WCtVelwvNWhJaFYyMjRSb3JOQU9NOHRnVEI2QURBTTltTWZBVTZZRUhIQjVBRFZkTTFJRHRSYmc0NWM0Q2RLMG5JaWhaeFwva0ljRFc4YXlncFdNcFBDdUZqRnBPNGYwY0F0WFcwNU44S0EyVmpVQXFqdDA3M0h6djA5ZlhaalZWNHJMbzI5Tk5QNHFpVllJbTFHUlFhNmpRR2Z5V2ZWellSQ3AzQk0wN1lONElTUDJyVk5rUm9lNWMwVGFlMEpIYjRwVUozZ3pyNkJPWEV5U2xcL1EwclNQUEVKdG1IR0VkdG1nUktHOVVXaGl3UVZCaHZVNk1EREVrZENiZkFlU0J5VDB5TXdtRmdxSFpWVjZlKysyWlNPeGlNajQ2bWo3eDFlXC9KbDh2OU91UCtZb3FZbFdxWmtkQzJDY2NtM05CMSs4dmt1aWRcL3NqK3g5bW1qSGZ4NjNvVVpCMFdrdVJKdlljRHJGNmlqZThDMFRkY0U0WFdWT09jM2pIc09TU3E2MmQwcHNzSEEwUTg1WVAydzJSaU91UHJQSTduZGR2cjhYMlU4Q1wvVWhPOWpIZmY5XC8zVGN5Z3dFRUJaOFRQV0phRnJEUHpIVmhNVE1RZHFjV3NNQ09ndUlzcldSZUlUK3h5dHpOYnYzMVdraGZ5UkJLVGlSdnp4dkhcL3NWNFVsS1V2NCs0QUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZkamlGV0JIVkMwZXlWTkJwbUpqQVJWb0Zrdm9OaEdESzRkSWQ3VStcL0I4cGVWeVFBNFZZdERSdmN3VWVhMDZHKyt3bVlUcTIiLCJ0eXBlIjoibWFlc3RybyJ9LHsibmFtZSI6IlJpdHVhbHMgR2lmdGNhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0JEZDFBVmFEUnNhZDJlSzM4S2ZqbCtEK3NxbGIzSmh6NEVodnVKWFVGU3Y3Y08wUTB2eFlmMlg4MVVSOGlmNzIyVHM0NDBWeWNmWmFMbE16bENIbkRocWViNWF6aWo5NlN1YkJFWkdZVmRycHVwMldMSTVUclBCUEpsRHdjcWJLXC9BWWJaanZTRDJsRm5KbnJDdTJEMDNxXC9SRStDaVh1ZFdZTU9Qd1B4QTV1YXpaOGRsWFhFbXZoM0thY0cxd1Z3TlVCOTNqSzB0SUZ5NFQ5N3dyTlB1QmNnb0VxcHp1bVZacjdHVmR1NVpzS1pRc2lEVUhzaG9wZGhUWlp2aHQwTkVpQ2VFN2RVTHNRdzB1UmgwK2E2WUhEc2pHZkIrY25mRWhrWURyMkJ0b0p2dnNMUlVJR3MycGgyYVc2c3pvRnMwSFBcLzM3WWVjTmpRSUtQU1JON1hOK1dDQXhVbGNGb1lQYlQ5RFhVWGpIUU16bUdDZ2h5OEZpdUxjK2FiQkhmdzJHT3YwblVRdmVCTVNreUFhdzlBZTBWaUNUeEN2OFZtQkxkbGV4bmQ3VDhBQThmclZaQkZEOW5BNEJsZU53a2llWjhKbWxmdjJYU1VZYlwvdFZkb3ZoNW11ZVNkN3NkZnBcL3pHd3RqWCtDUVNXK05sU2FLamErTHluK1JEaFZVbklQK3U2clY3K2dkWExnZmFBVXFmRldpXC9GdW5HWkZpUzFcL2tNOVlKckZiTm55RWYyUnIyRHNjQXRnVnB5YUVweTV5blVJYVZYdllTeHlOcWlseFg4TUVheUprRzJIRTc2MTdzeSs5UVE5d1IzdW00SzZiYmVUYVVsTVwvVFByS1Ryc0NNaXBGWWV2Z0ZYTXY1N1JhNGVMQnpRS09JeU1yOFVwTis1NjFhZjI1WFh4QlF1bE9BZ0JYdU1JTmpLWmlZY0NHOEFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmZGlPdjB5Tkl3MXBiN0dLUHc4aG00a2pxTGFza25ZQjIybFMxc2pWRkRtNlJRXC9Ua0FpNU4rNHpsSWJtZVRGQjZxRU5jQlk2IiwidHlwZSI6InJpdHVhbHMifSx7Im5hbWUiOiJIdW5rZW1vbGxlciBMaW5nZXJpZSBDYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCT01qSWgxMTR6SnlNSjNndWhPdWI3bTR2NWttOWQ4dmpUbnV6Z0ZaeFVGbmd2OWlvTTBiYVpnamJIRjFraXRHQldVaVd1ZmZ5TFk2K05PWGc1RFJieE5aQUlKYmZXXC9keFBrRDhWdjQ5VHVLN1hLS1h2YVJwQnBMaUVWSXpMbHZxRkM2S0Y1cG9oSXBqaW9ZVGJLK1ZIOXZ6akdHenl5dkc3NVFvWHoxblpqMkxtVnJkczgzR2I1SmpCeGVCdHF3Uk9EXC8wUnZtUyt3ZjN5Ym5vZWhcLzA2U0thUkFXejFXOThQTWU5QUF2RFQyc1wvTEZrUFdqbUZwR25XREs3bXdLT1doSVVMTGZuSlpPRDBwbmJcL1hvclgzVlBhZThzSkJFSmRodVpnVlhrK2FveDU1V1RBVXBHS1crOFVVK3RIWTFrZGEzOE5uNG5kUlFoNzgxb3MwdjZlZEoxRUZ4bEZKcDhjSWNYZUVmN2t2dUlvdWZDUGlMZjc5RFNIeEpWQ3NFQTJTcTd1S2NUbmx5YW96M3VYV1hwNEpBNmxRTGZaS3Zsd3J6Y3gwNFRkQ1hBTzcwWThHMVBTRTdITUFWMWJHTGRmXC9jZTdTeXM2VlRHSERnK1VaTkxsNHJZNFBhR3l2aHJTYk1CV2ppb2xJS3BmU25PK25uMFUwSkViRkxIUkhDck01b2p0aDEwK3BMa1NhYUZHUitIQmhLUSt1VmFTenc2NzU4XC95ZVYyM1RvbmRVQ2w5dU1FVHJ5RWtwUXZFTjJPeGdIMFRCTW5tQjJSOXVid1lqR1lcL1F5dEpaRG5od1dCbTlqYk1KSW9peEVJQXJVaVNaUjJqU3VxMnBUdGIzY3JHbDhnbk1Edno2eXZZXC9XcDdwV284QXk2MnBCXC9FZld3OHlRa3FDVmlzTmVoQWNkMlByMk5DY21EN3cySXg0YUlrS0FFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWFBhS0xxSGNRTFY0SVlIYUQ2aWIyeHlTRVJwdzNNZGQ0Q2VkWGVBcUdDOG5LcDBwUExRNDZYNFYzVFpnNUdMQmNIazM2VW1GdDFFIiwidHlwZSI6ImhtbGluZ2VyaWUifSx7ImRldGFpbHMiOlt7ImtleSI6ImVuY3J5cHRlZENhcmROdW1iZXIiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRTZWN1cml0eUNvZGUiLCJvcHRpb25hbCI6dHJ1ZSwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkRXhwaXJ5TW9udGgiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRFeHBpcnlZZWFyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiaG9sZGVyTmFtZSIsIm9wdGlvbmFsIjp0cnVlLCJ0eXBlIjoidGV4dCJ9LHsia2V5Ijoic3RvcmVEZXRhaWxzIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJib29sZWFuIn1dLCJncm91cCI6eyJuYW1lIjoiSGl0ZWxrw6FydHlhIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCWm9zVDVSMStcL1M0ajRIR0VOV1dBXC9pUGVRZmtqeHVqaHRPTnBQYzQ3aGF1VHpEYWVxV0hKVmhcL2htdTc1NUJwV2pVXC80WE55ZlBYZWRGT0hSTkNWZzJyNldya1lNeFMrK0FHeUdzTXBqdXA0Rk5uYjM1cGtXQ1pFazNtZXVvaWpodlRxYnppeVpFclVDNTI5TDIyQmdtbUg3Z3BheUJUSkVmMkRTWW5Uc1N2NTJBNWllSjdiUHJvY2IyeWxHV3lMMFZoWGR3UVZZZlZkd29ZWGJhVlwvQVp2dTlzNXRmNzlFd2Y0bXQ2Y25BeXRFa0pTWGdaNEdPZUZIdEp5UGRxcjlwZVwvd2pBU3JvZzdYTVMwRXpoWjdyR0k3ZUI1NDV3R0ZpandtblNsc3JGMEpLTThuRWdmVEVuU1c4czlhckVFd0M1Q0g5dThhN2FoZ2ZrY1I1Rzh3a2E3OGJkOG0wck9oNzFnb2JhWHF6c2g2bkRMSnhvVkpJN1FGNXAxQW9vVEpKSmlsOFE4SFpkQmxCRmZ3QlBXSElhV29uODE4SkNnTkxuaHljSXBMNHBKNXYzNEsrbGg0TlE5STRiZTE3VjN0RkdBWHZYRmlHZUJNUDQyZU1UWGhHd3R6T2d5d3JjS2NMZGNyemxseGxIYUs0UEVvTWtoZUpGNWhzbU1RNTh4VzBuWit6RXdPa09IaDZzMENGSFIrRlR0SEp2a0hxV05BVzVMUTBsQ0VtMTdxd0crN1Y0S1oweDdmSVlOMjJ3QW1zRzNRc0pPMVFpM3FvQkJabmNDNnBwTGp1SW1BZ2hjT0hCd3V1Qk51RFpoVkVRcTJNV0NLdFFINGFtQ3ZnaGhCa01La1IreThvZEVHNjE4Tk9FZnlGbDloZVIxM1ppMnBDK0FcL08rY0N6Zit4QTZ4QndBditMckVwQ1NUamRlZm5BTEFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWG5nVjlFMUl3RFREMEZvOVwvYnVwR3VzbzZERnlabGowbUk5ajBQTHQ2SGFmQnh0bk1sK29IVkJidWtaZmoxcmo3QjZzZU09IiwidHlwZSI6ImNhcmQifSwibmFtZSI6IlVBVFAiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0EraXI5WVF6S005NTljUSttS0hLXC9BQ0N6ZitlcGI3bXdoSnBlZW1BRVRMbFB1a3JsejZjYzh0dlwvWEV6SFljU0R1QkxEN3F1V0Z6a3hXUFRWSTNxMVhyZXhRazliV2dxVjNHTGRrekhuUDBpc1IwSkxFcmVpdmo2WlwvYWZcL3EySWJiQWQ4YzZ2M1VwMkdMWmdPUGtFd2lMeXR6MHBtcmJEZ0Ura2xDSW9aM3ZZS2hOTEpIRHpBUGFUNWN5ZzVSazVwamJaeHo5eDNXT2FqTXV0MkhGNW1RdzIyNDVtdGFLWUxUOVNDY05DRU9FQjZQYlJDTFlZU0dDdm0wZkUzdEYxUXNxcHRGb1BSZUF4M1UyTkp3M3NzT1orQzRXOUg1cVBSMjJzNEhDdkI0MFpRSWNodXg5Tzl4NFRpUWtEXC9GOGQwNTVWNTFweTNteUJaeUlYVzNJSG9sNDgzZllNMkZzVnMwUE1rRSt0NHYrK2NLZ1FIdzlJXC9UNFM0eHBJeEdoZHhiXC9FcHo3aThRaHh0dXJIQlwvM3hGYnIySm1rdHpGdExJMjdOSjdrZGhmUkU5V2doUUlNam1xdWxMQlhjMmlGNjNrdUhLTnlaR3FzeXI4T0tTMG1tR2RXZ3lhUjJHS0VRdkpoMGtFQmE0WmNiTjVkV0Y3QytiYmFcL1FHZzU5ZEF0dEdJRURYWU0yYVRJXC9vOHVLdlBLeVdyaHR6a0NtQ3RqMGlNYURFS1NpS1ZKVnFmQ1FWVmJnbDh4eVFYQThDaERiR28zVFRQUmdMVUFXRGxsc3drVGZCZnZiWHRMOHNOTlVBYTIwendvNXhBTXl3Mmd0MEg4QzN4bldCRHkzak5tcVZ6RXllU2UweEZ2UFhrN2RlWWxLeXRaNlNVZFVzYmM4M3FhT3FBU3YxTmhCT0w4ZXdxZG5uWXN6djFKVERwOGxvQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZmcjZLeWcrVVwvQkh3VWJ6aHZ2Qm1TQkV3bEI1U0QzeFdnRXE4cnpDVmlRTlc2VFBkR2FnWHljZnRJVlVsbko3RG1wKyIsInR5cGUiOiJ1YXRwIn0seyJuYW1lIjoiUHJpbWVyYSBDYWRlYXVrYWFydCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQnIrd0RcLzVHeWRcL1FSNUdkM25RZmRaXC93cGlpT1dzVER3K0FoVlFWN0lKd3l4YWN1Sm1ld0lSeTBPME84MU1vVnZSYzZoYjd2Q1RmRVRYYkJjbExUTjJzeGd3V01KRUFBVzQ2OFhRUGk3b1ZOb0k5eHJuNmYxY3NjWTJmcmdjM0wrelJBOTNzQ0FETVBWSzRWb0oyQkhrVENPb0RTWGVGY2NcL1JoTEJqbjdVbzh0Vm9oTXNXR3V2SHZEVDBHeURuZTJWOWNRZUpcLzhLdjJXcmMrMmVPMHZKWWZzcExSUHZGRjdEaXRDWVJxUGtuRHBSRXd2aW13ZUVtMnZaYmZaTzJER3JCaXpaeUdJZXAxSEszNXJWazhcL2Q1RXA4OFdvSXQxSVhsWG9aT0RzeXg1WjFOa042UlNsUFF0WnNwTGI1QW4ydXhtREdkMWV6aVVzRkpKaWticG4yRU9OSmhKeEdOZmRKak1idlJBNnFkRSsxS3g2RGxrK3M5RVE5NkJnOEhvXC8xOVR3eHZjbmhnYjJ4SnlvQ1wvRWtFNmRFQVwvbndRWmJ3eVRPdzc0UGVLZ0JGY2J4MVp2Y2JsYXJFU1JUYzhSNkpCMWZ1RW9PS1ZLSmVpZmtwb0xVMTZkdkxaN1lCUUtuVUtRbXNrY3dRRzFINEEwcW5cL2txMnp0WTFKZEk4aGFEVmgyWkJRRUpFSGhNR1hxZU80a1g5Nlc3eTBhdVhiNDZOZkdoUnpMbXUrODJJOURVZzEzVVwvTXZhdEdmWWlUZDNLcWxCSHhneHZ4M0RPRktuRTJOS2VveGl5RjZiUFJaRkt2RE5oRFhaRlNGNTVmOE1nandvOUNEK1dDRjhZYk03R2xSeEhWcTdTVFAzcEZJOENTTFNjTmFQcCtZc2V6U282XC82Z0plT2RtdzNSRDFDUVhDYVNKZXl3VE1hQzFcL21sYVJBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlZncmlVTVZxN2tqSENSZThib2NmUkJDNE94NngyTjBJRmxPN1BXYUh1Rll0SW9UR3ZTYTJ6eVhLSURQK1dycXlQWjFzMkhqNDA4cGliR0EzSWw1R3c9PSIsInR5cGUiOiJwcmltZXJhY2FkZWF1Y2FyZCJ9LHsibmFtZSI6IkZhc2hpb25jaGVxdWUiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0JUd2N6NzJXUVwvcldaUzdTZ0gyVm44ZzdyV2JHQzhoVUlEempVMlJlekl1WUcrUVpjN2RSVWRuV0VhcktqRHNubkh3aGoyK2JGUkM2ZEhhRzRPY1NiYlFWM1VtZnc2REtZekFRRzIzN1U4NTlPZWI4aHY0c2dpOWJzWmwwMTlwWjFMdTZlTkNmaWNMRVZGa2xCTkc3ek9jVHRoM09ZMmZ6ckU4V3d0Z0FReTNNb25jSnd3RHRVN25ZXC9rWVYwbGQxeWdnRURHMlwvbnNnOHFLNjF3WHFrdnBVeFdHSGVDWnFqaXZ6RmRBNjZQSFBCMDVpVGowV2xzUmlnSW9IUTZaM05Bcmk2a0tlOW9hb2oxd09WcFozTFNjVWNBbzg3dzhDcGJZdlNST0VPbmxYZkx2T1FENXRCTzhzSlFvOG9aXC9QdzhcL1h6MFV1QW4zRzhNeTR2UjZ3Z1lzKzVia0NZcG5VMHlGKzRnOFwvblVPczNWM0lYYjB5bGdvWE80WDE3TWI2TzlcL3pmV3h3TkJYaVZPVUZXUGtCQTUyN3k2OWxKN3MrUDF4cmRCRkJUT25Mc20ybnJTTnUwbytES0hZUytPWGJLM25peXdZYUVBcDV2aUNCQWJidm0ydWVxM1d2ejh0Nmx0NlRuUXhcL1JGeEUyWVM3d0tKRVpxV2VHeW41NHh3cmd0RktrWHdMNDF0VUludk95M0ROSVErUUNHQXdEdDNiQXFpVnFwbXlldVwvNWQydzR3eWEyMkhYczJ2YzRNMUJRMG5FT3MyUmdPUXVsN0xZeXowaU9tOElwa1pMSXJHdXE1Rmg5XC9ueVRlS2FsWUNZczF5TGswMXFuNVwvUlRMU3pKREVlS08zSXBCVVh0OTV4WTA0Uml1MjJYemRTMExhR1pYWHNqVGloT1VWdnJoRHE4Z1JIem9mYWFhYU4xRGlnXC8wN1hBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlFiY0JWMTNBeVNTUkw3cTlqRUo2NlZqQml5MXB5UFQ3cCs1ck5TMWY2bkZyWDJ5eHdVQXVJcnRmUmtMbzhtc3hlYTBoWTYrR0J5OG50QWwiLCJ0eXBlIjoiZmFzaGlvbmNoZXF1ZSJ9LHsibmFtZSI6Ik5FVEVMTEVSIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdDQ2h6RDFrZ0VyRk5EUDRtT3VSZ0p5TnpWNTBnalF0UkVVbjlsaTFpWEU5RUhvMzdKVmtJYkdKb1dJQXJoaDA4ZHFGaFVKMDIrR1VKMzlNXC9wdndnVG0wTlgyaVwvRW9XSjhNU1Yxb05ZMmltT2QzXC92QjFxWjI3OER3TmY4TDJtSTBiMzNEWnU2TFFvbUtPWCs5bHQ3NlJMYmVRUjZ1YjJDZERadE1JK2s3OTVjTkNUcXBCTmVVakdGKzAzR1ZmcVwvUG1WVklHd1RlUk14b1hJQ0s4Yk1kVU1JSzlsZjdSUUtlV0JkdFZkd3NDRVwvM1Z4bzU1bVwvQlNOTVYxVEJ4OUdiM0RpVzk0N21ZVVhGcDhkVEhyVFZYdWJGR0QxcHM2dUk3NXFSemttYnNrXC9XN2dpWnhXNmg1XC9tK250eXh6RzVRVk1id0hZV2x4TUxEODRBeGtHKysrNHNuc2JFXC9tMFwvRUYxckxBOWErNEM5QW5ndFpNakx1Z01SR3Q4Znd1elliRlFQWTFtWTdoeHhKc2g1RGpZNUFIUE5TV1VsalNRWFIzV3BhNFwvNjdIOFJaNzVYaUtJRjdQK0IrUjV0d1dGeDk2QUh0VGQyM3B1c0xIblBZbDBWb045ZU9pQTI1N2NpTEZQZ2V5eDNcL1JVcGZtUGxsc0dneTU5KzdHbzRmQ2UyakFzQVdqRFFjVlJNczZIeUZGUTFCK0dSUVpldE5QTENCcGdLVlRoaGlpT2lrZXZIc05RM1IxVzFPSVJmZFBlNUp0OHNaTU5XbzlOXC9uRzR5cWI2bTBXcnEyRlhkZWNqYzVQUURrdWE2VmZva2pSNGlrakJRMVVQZVlKbzQ0ZjBvYm1MSDlkNmFtSDF5TU01QTJudjkzMFZMalB1T0N2eWo5NG90dVp6NmppQVBoQ2ROQUVYQis4SVAwY2x2NHZRdElXb0FFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWE9YRytcL3AxMnpQdUZTaW5CWWFBbDlQc29hQmVTdUFEa2l3aGlLMzBTSDBKbURzdEdOTzNhSFRZc29ybEZjcmFYYWZjb1F1YWc9PSIsInR5cGUiOiJuZXRlbGxlciJ9LHsibmFtZSI6IkFkeWVuIFZvdWNoZXIiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0E0bTNGbXkzdUFrckFCd1BITzZadU1xdGUxRndJMkk0NkdqN3dZbTZqQWZ6OUNZV3FZcUFtaU1kbmpLbHhqZllQQndzXC9lRG1Zd3lweUp6VW1TdXVRMEFCWHRUMGRGM01paXA1R0lTSHRUUlB1WTRQVmM2cmhkK2ZhSUNYSnEzOWVcL1FJNHNGd1BnMWsxeHU2aTNraVNaTUc1cWNPYVViQ2NtYm83c2FweHUyYjBuZUFuTGo3dW9xSkd0N3dXQXJ6RW9KMU9ZNHFIOCtEN2YyOFkyTEZvOGNFZDJydmE1RFRCelRMUCt0a3NYVnB6cVpXOXBrT1hUK2U3RUNMSGMzYWh3dHFMbXYzakpzc0JRaTd1ajJ5RGw2NFZvUGFOZndoQU9wRWlyWTBkTmVucE9ld3Frc0FnZG12TVZlY2VrZmlXUGJldU05Y3lyckFVenlwbkIySWZObWFJc1JrUmttU1wvVVhSUWNseitJVDYwUWhvb3dJUGx2R2laZG9BYmtoMk8rNk1LY1NxaG1kZFlMdXIwRitHVGkza25zZXlmZjZyXC82T3ZnNkU4WnhVbEdhUjBnWjJiNzlCZjBJTkEzallZWmdXSVwvbVYwblRmTVo4UWJXd2FuUUZOUDBCTnlLZTBpM3FoZEtndmFwUEhjTWlWVzJOOEJRWms4NnVtUVRuNzJtWmc1SlwvRDFEM3JKOTFUWmJOcVNTS0tVZEljZVBsU3BqZDBoVjlKK05VVFdDcGczeE9VeWFBRDNvWkxCUnNTdG1pRktFaEZ5M1Qwcnc1bTBhMUExZkxFTllxXC92ZzhjajVLOGlncWw0UHRMS2ZOVmNrRWxzOUV2QkxmVzB2ejAwbnFxWFJvWk1nbUZoK0VtMUgyUUhKcGJFUXZxMUNvMDQyWkZHeDd3ZlpBREJCaGh5S0swM0J4cGFnNmIzY3NTUTZrQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZRbEVBWDRJbGhiY3NHWmsyM2NDSTEwTFdVek9GTCtldno3UjIzT3hwUTk3YTI0OHNmNkMrb3NERGNDUXU4WTVmUU5SR1NpY3RBWTU1WGRoTEtOclMwND0iLCJ0eXBlIjoiYWR5ZW5fdGVzdF92b3VjaGVyIn0seyJuYW1lIjoiQWxpUGF5IiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdDZjFhdVNHb1RZaHRnNDk4YkZjNmhhUlU2TmhuTkxHMUozQXhqZk9mWThNUVRrM3IyUjZaNEFwc1R2Q29wSkhWelwvU1F6dWFuWkdLdUQ5RWdcLzFJZTQ1YzR0VktnTzFqbGZCUjFkOXVNaktJWGNTR3B6dDFaYncxSFJDZEhmVUt2OWtnUUZnZFNtNFBFUTlYdG9iMEpyMnRHam0wSFdtRVBGTjAxcnNlVzhRNnd4dkJiVmsxUmhKNzRyd2dtR0dyN0daWHc5elJQYWlhcWg2VHc1RjkzcElMSHo5TUZpOVIyMjQ5MjVCakdlRjV0cmRNTTNndUYydStTOVgrOVlkRlB4MEVcL3Vpb1lQV0w0aVVxSGJcL2VxVU1ITCtVbDU2ejhaSWFramU2Q25lNDNid0FpdjhuMVhjWHRpb2pkOHBPNFRBWUVQRU8zT0ZaSWQ2ZzA0OGdWemFCajNaNE5PYUtwUGExaGtyaWN3Ym0wRDY2KzM0OVh0K2JhSGwwSk90UE9SXC9iUXdSSFdvcDdyQUxHXC9oUmppdmJ2ckNwRVI4aUVpS2FQeE5TWm9hZTkzVWU5YnRQTDBWaG5hV0QwTnBjeGljSHV2WmJlOWRLZmZuQ1JEd2RiK29xS01LU3JnU05HZGtlYU8rSW9BUERodlpHRDA5V0ZHVmRXRkd3c20ycmVVVmNPZmVTa2VBZmlJVElcL1pjRmxYY1Y5NEpYdnZZUDQ3WGd2RHJUbnViRFZmd0s2MGhmVkxienl3emQxY1YzK25mNTZzczNiN0k3ODJyOFJYY0Y5R0p5Zk5kbHZJNk5XN2FlQXdzQlBIY1FoSFppVCs1VkhYYmJ4eURkNHFUNHROXC92Y1JYeitIUDRxVUxUeGc2d3hJTTRoenRjVzJYOWFKRk5oekZZTmJ2aTF1UkFnRHUxK1M1eENoZnNFcWt1dFVIdlZBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZmZEcllhN3RSWEdmYllBNkdlMTYxS043c2dWbDJvTnpsM0huWGV6eW5kc3B1RkZnRHJob2lIZWxCMWlPZlJOY29qamxMWVk9IiwidHlwZSI6ImFsaXBheSJ9LHsiY29uZmlndXJhdGlvbiI6eyJtZXJjaGFudERpc3BsYXlOYW1lIjoiQWR5ZW4gRGVtbyBTaG9wIiwibWVyY2hhbnRJZGVudGlmaWVyIjoiNTAifSwiZGV0YWlscyI6W3sia2V5IjoiYWRkaXRpb25hbERhdGEuYXBwbGVwYXkudG9rZW4iLCJ0eXBlIjoiYXBwbGVQYXlUb2tlbiJ9XSwibmFtZSI6IkFwcGxlIFBheSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQzB6WU01STNxcW81VUdDTzBzME1kSXh4eGQ3YjI5UkxvK2RnVVBOZkVGRWVvbHZYNnFOcUtCSFBqWCtiWFpHc2tJSkZ4eTlZV2JRUVNaa0VBRXFQeWR0R3I3cnZScjJNSWVrY3MwUTlqYXp0NjJ5QXlwTUw2T3Jha3RrMnczSkRQWnVLanpIb1wvWitZWXgrXC8xWkhPbHBXTFwvckdCMmNaWFNPMVpTeDVFUUtnZlRtd2xTMU5rRmZnUXpsOHNRQzFodGlkc0lPWkd3OXhQV2Jtc2NOaHBxRVpDWWxET2ZFelJIRWx1Nlk4ZzVEMHlIT1hYNVRWd1hldHVtK0xNOEN2Q2xYK0RFenA5bWlNXC8wVE1WN0orM1h0VVRBM3hjUFRcLytieURmeWdiNTJXR21pSGxFbWE3ckRHZGxCUTVaejdUYmI4WVc1eTJYTnA3ZjZSWjNaV3k4TVIrVitCYkZobmJ2UlAzcFNzc2xJOTJ1aURnVDFqOEhrN045Y1dQQkhtcDllT2IraVlhMXlGRWU5QmthZEdkWWlEVGxTcldKU0c4Z29UUkZCS1JqMTVkNDNFdm5CdTRCWEFEU2gwZk5FWHlraENrdGNhb2xIdXVzYkZBcjJDVjJEXC9UQThWOUZ3dnVOWEdBZ1U1c3p6dkcrak1DenRSZzdFRkdFbGJBV1BNWXlFTk8xRWpVcFFRM1wvNzZqUzhxWEJlalwvT0sxV3RtVW9DTzBwbHRQb09QYUYrc3d0aXR3c0ZcL3Q2TDdnQUVibXVmQUVwbUJjNHVoQWhmU2poN3ZodXJiV3Bic1drZU1XVFwvaSt4QXhYNzVXekNjNGpMSEVtVFcwZERvV0s2NWFIcEZxTmhjOURuSk1ETkFwRjRqeTU0XC9xbXpaaFFNZHY1WmtPSlwvZVVjWld5YnNCRDJ5bDZGenBrSWxIQkNFK1paWHZLNEFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmVW44Y2RpVU1WRkpuQ3NmeElGdmNjYmtWTURNQlc0eVJyejhRYjJYUk9wc0EyaUVIMDVDRUNzOGdMUVlmclpieElrakFPeE16UT09IiwidHlwZSI6ImFwcGxlcGF5In0seyJuYW1lIjoiQmFieSBHaWZ0IENhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0NVcnN3WmpkNXBaRDFLYURwNnFxZ1p5bjNcL1UwU1pqXC9zbE1ZM3huSm9KVisyRnlGS01XOXNvYnp1ODVYN1VHbTQ1NUcxSEFzYm04RXlJRlZzaG5sRDFTZDVJbXpTZ1ZuNWR2alZ5dE1LdVdtUW90VUZWb3loZzBTYUhYMFpGXC8rWmJxUjN4YUVZUXZoQVpkTUoyemxBT2JSczZDd0hLQTZ4WVBRSWdvRVBWeEJoR0NLMVhMa0ZXUm0wUTkrc01qNjhcL3NhOUVLZlwvK29zbCszUjRPMlpCXC80Y000cDBqdk9CRDNGWUVaYURHSmJPTm9taWM1OCtpM1VyZjgyTE9hVVwvVkJJZkdDT0xZNzBKd1V3b2xlQVI4K3RMU2lKUkxrczl1anhnZjI2bmFTTUwzZjlINk9tampHMUxNZTJOdDJSWlp5RnlNa0d0ODRBQ0o3a1wvcVwvZ3VkeFdza2M1YTdaam1ncU80bXJCbVJteVwvRFp4Y1BjV2F2TFMrbSs4TlhhUFprZW4xaTZMNTNtdmIrQnJ5UnRJT0NnTStBaEd5VWFQb1hRT0Y0WGJMcWhOcVRIUmg2VWpINE1QTFlKclZvU2lXU3ZSc3YySjEyNjhyRlRIeUNGenZxdTl2NExDR2lQN0I0NUFGSm5LcGhGYjYya3I2Yms1dm1kYnBjXC9TOVdVd3EyYXZDYlVcL2RHRnlJeW41cmRFYW1tc2ZwMlgrcHJJRUJrTWRwTjFhckVydHRFcE1vQ3RwS3dNcXl0cnZnckR6UmdLMmlQV0FXdTVFWEIwNzZWSlhRdDRGWmd2V1ZINzdwXC9kMlpCMW54Q05OcDVjVWo5SVR2THd1Z25WRHFKVndkdDNaZTdtNDZkT2o4RitBSkFYMzV0OVdsR2htaDNNZW9pcTZWSndDZ1VTRUJDZmFpZVMzb1I5S0RYRENKWVoyYTVZQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZaK0p5Wjdmbm9tRFFteFE5bjhBaThtRTRVZDVtTjhFd1RTUkd3M2hrVXpsZmxFQmJtVzZIMGprMThoRHh4eFhvTW9pcllzc3VPQ2R0YkU9IiwidHlwZSI6ImJhYnlnaWZ0Y2FyZCJ9LHsibmFtZSI6IlNFUEEgQmFuayBUcmFuc2ZlciIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQnpZYkNBQ3ZZTjhGNE9TeFlsT3RQQzRhZDRFaTdIQ0ZkcjBQMm1TSWRoWDBEbDFuY05pS01aNkQ3aHluWnExSWl4b2VjQUxZSkxLTHlualcrR0pPeHpNempMSStNQSs3THdWV2tDRFAwaUhucExnSlV6cDJnNHNPd3I5VEdaeHo4NlZNekorTGhmT1U3NHRRbnlGNVFlRmYxS1QwdkdSUUdoWU1MUnNaN1pNbGVXeGdsbWE4V0RkRmtha1l6RDRtTEhtaFlzS09SVE5DNndzQlBVZXdkK05iWmtFQSsrYWpJY1RkSDROV1IwODhFeWV3QVdpajJXWHh2dnRFNUh6aDdpRUFxb0NVTlhjV2ViMFdrZUhUWVhPVTNtN2lYSDh5MThjeHpcL2lvVFltSUNjcEczdFg4dXZXbW1oaVpORmgwWkQ4K3BGY3JXSkF6NXhtQkhhM2JDdEx1ZjJEcmE2TnVENkRaOWlcL2JJZzhqQkorT3hlN0VWd0l4dVBNV0pESTFldm50RW1yZUxXTVM3cnlFREhqd2FuQ0xOdjFyelN5cEJsWkloaUp5Nld4bHZqSWpla3FqRk1iVkpZbkpOUm9Kb2xNU3lPQW0rcUUyZnRNXC9lNlptTjNGZkxsR0xwcVJJRzdtMFEySjFtdWlKQnYrQTVGTEFKNUc5Z2pWSnZERTRpRUk4cExiWDQyVWxGbVJNUkFjQ0tOdVZzaWxmOGJXM2ErRHhcL1QyWHVMZEZFM2pUczVLaVFNODlOVnVrVmZJUjBCSmlcL1lNWmRHcVF1WE54R0E4WXhiSHo1VDdYUWZ1Q0hnSHNpYVd2R2ZnbjNYNG96VHlkZENmamd1SUowcE9mRGkzclV3aksydUgwZUJ3elRFNzc5OEFpVmNqQzUyelVFdHBaNmZEZ0tXUkJDRXVkZ0d0VjRWenMrQ1BJcFJOYVk0QUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZiT1dHN0liOTh1Qng1cjlDNEtpMU1PeVA2c2tJZGdmcUwwTFJcL3RNeVFyblFqSEdVVkNOaVwvdFd1YUYwdWJxXC9FR09VV1J2TjRkRVI0aVFpSGc0PSIsInR5cGUiOiJiYW5rVHJhbnNmZXJfSUJBTiJ9LHsibmFtZSI6IkJsb2VtZW4gR2lmdGNhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0JZRWpIUVhIc1BRNTN6WXBXTnlEdkM3U05sckxMYUFoUXBqRVlRazhQUG1kYWF6TFY4OWRvd2YrYSt4ZXBQOHRIT1RVd3pvYkRWalwvS1U3NzZ0UDU3SG1jRTRnanNVaWtEWEVmaVY0XC9DU21wNndzenkrSUtrdFRUUUpcL2l6dGxkNyt1dmxBdFJ3MW1WUFdvZmFBK0I3ZmF4Y3hkdUMxalpwaStTeDdjaUtIUXlsR3ZVbVNlOXNhb3orWjhWeXlsZFArSzBSU3pDMitQdzhDeUtyYUwxNjltRFVYV1wvNUZOTmI0SWc4SFJWU1hcLzVMaGkreElja1NOZWozd1dFNVdCUmNuelgwUFVWS1ZLOGlNTzBSUFZObW1CQXUzZWdzREtmODRGOFlRSjA4c1lFdXBhMW9yRkh6dlZtOUprSHpjYTF6aktEOW5NQTBydjRBS2FnbHB5XC9qODVoUExCUk12QkVYZEpSazhGRG9qUDRDN2NYZzR5eEx6NllicVQ1ak9CNGhkOUUweEJmeVJsNlQ2djdYVjh2elhBXC9YeU1zUXBIOEY3cTlrZGRBSW9iZk5seFNyd3FSbVI2M3pQSVh1WE91ZE1pbnhsSDVCM0YzUkhtRzVzN0l1eDZ3TEUwdnJmRUpiN1Q0NnZuXC8rZWM2cTZYelwvdWJGc0UxMFpmZnZJeUVNNDVObjRCdnNndm5MKzMzek5yeWwzTEVBN1pZQ0xjem10TzE2amt4UGE1ZWYxbmNZbjYrbndQYXl0bUFCdEpXVjVMR0Fsbm9DQjhsbFA4bHhEV0ZRbWNjQ3ltTzVDNUtxVDI3TGlybHdyMis5ZWE3bWIyazJtcElxcmtiQTJvVzA2R1hKOHZHclhIbFo0dlJ0eFhpSk0xU1hOaVU0MHRmanNZNTZkWVR3aDJaUkRvb2lwblByZ0JyZ0R0d25FU08xWVpBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlZxNFVNWm5OSnplem1UUnFCenkrWlVDaVwva2dROHBMZlwvd3VXSWt0K1hZdVlkQk5qelo0d2dpdlNVNVwvaXh3WFJyNk9JcVJtbmZMVkpReVFrd2M9IiwidHlwZSI6ImJsb2VtZW5naWZ0Y2FyZCJ9LHsibmFtZSI6IkJvZWtlbmJvbiBHaWZ0Y2FyZCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQWhYYTIxRjRyZ3ExUE5pK1Y5dnByNmJ1RTdmTVoydmZYZmtsSUhzOXlMTzBVd2FFQkx4RFkxYUxSRGtyQ29QWFwveml4eFEwSitpTTdXSk1hUlBqOUxvODZxK29lZTRVSnQxcTNsYzIyS0tsck93V1NzTUFXUTRFdnRGZXh5SVRsOGpPcWZTenN0cHJKRE1DNmE2Y21EXC9VdXUxXC85dStFdWNUOWhMem9yN3VUcHZFQitxUWRXaFZPWGtJYmkzWGdLdXpIa1pGWldDXC9jWG1ldXZpaHlhRmRTMkU1Tjc3QWZFbHB3VFVqamtTV2RodVRUNFlwRUt2VjdlR05jYjR0a25Qa2h0VzdYTlhCak9lRmVjTE5KVlJTUFBzOHpoMjVuaWJaMExFU0VBeFVWUUkrSXgyYXFUMFwvWUFSaFpzS1dWa2Y3eVcyNGVQNXVMTyszWGNtSThHQkh5ZDd5c1NEVTVSa1JCY2llSWQ3c0JJMW5MeG14Z0FcLzRFMFlSZzNrY04wbFwvZWp5TEtobmRQc2hMcGNiSnNkUWR1cFF0R2oyd3ZLOWlYazVQcXhsZ1k4eG1JNzNEckZJOEhqNUtZcTVCbVQ2QzE3SjdLbHUwb2xMYTJ0UVBrcTN5M2pZZ0RjK1VodUNqTEVTVnQzckVlOExHZEt5VmcxTmlKeEpWMmlGK3dxT05zNkZKQk1LaFwvRHQ4dU1rdDUyOGxSV2tjc1BBMGtDMTgyWUVZempNRm5XTXMxTmFTZW10d0VkMmdPdk5KYkFOeGR1SWF3ZnJYQSt0bUQ1Vms2Tm5NY1dmTzIyaGxHdThPdlwvQTJkMUJyQmExMjEwT1B4V2k1aDM2ZjR4T3ZDSlpCMWtackZcLzhMYndETnRoR3VJT1VvRnpYNHMraDFqWUduRzAxSzN1bm1hUkFVTVlzYWJwNEwyc3c1TVU5WnRQcFJBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZmFPOERYT1REdUVwMTJaVEoxN3hzYzhoUE5NU2QyZkVNTlk1S1wvQnEyWkhrdFIrSjFTaXA2emwzQU1BUUpEZWRQTVVOS2hZSnBSZz0iLCJ0eXBlIjoiYm9la2VuYm9uIn0seyJuYW1lIjoiQ2FzaC1UaWNrZXQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0JzWmlIRFIwR3ZlM3pjbm1ZdEx4TU9UWkxTNFZGM3dXcUN3ZHRzcGl3SllpOTU0YzBha2Z0Z0t6S01NY1hvRlJYRFBacHFKMURlQmJrWjVlS2paelJXbmpsaUU4ZmpPMFBCQU51ZmxiUm9Od3lIZStlVmErMHJsdmUwM3VhWlFwNFZPNjZXakZMU1wvWXVsWjFBSkdHeWhrYTNNVmtoc0U4QVdkSmVTQURDVEtGVkpBOHFDMWxCSmphQlwvZUxBOEVIZXJxUHhIWXBpNHMreWtGTXNmaXBSSFA5cElrKzV4VUxFK1M2TnRUbU5WVDlKV3NENkYraGJERm02Qk90clVuRUt4M0ZtbFpTWU1ZNG45Q1QzcGFGMHNIMnBOcUowUFo5UWdJek8yMXBiOUJoQ0J0KzFyWGpMTlhwODJrT3pCSTNZUlZkUkdDZVNRMlJwNjl5Y0FHaExpa2Z0WjFmd1JJVG5yTWZqdEVoZ2RTMXFiSWlFc0FoeUIxR0lCYTA5NzU1WjE5OVU0UUlOdk1JaHJGYjQ5RzFZT3NQeUJYTXl6UUhnRUFVeFk3TDFINUN3TERvNnNrYjJMenJzZWFvS1hmRjRCb3FmRVNvRmlSYm5JXC9PY0Qwbmg2K2pGc3dISVBYSmNDUkloZlBxdVwvcHZuSE5zK1RwV3pKZ3dRVHlQeTFDMmszRDBlNWdIMUk0Z2NuNDZ4WXBaOEljY0wzVTUzQ0lJRkZMYVZ3am5cL3dVYWNrUU8rK1NpeENpVzJBMG90NXRTK1RWUXM5dzhRclZXS0xMaXFUU3VFcmNtZ3lUaTM2UTBcL2h3SmM4WUN1TXpTRVlpTnhrMnd4SFRkbEhHNFwvVzIxYTZFTXArU25DV1Fub3RhdVIzNWM2bkg3ZnJZSHc5eDE0XC9VSjhSWTZlRyt4QjRmTlwvS1c1MjZ6Yk5nSlBMazRmQW1BRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlQ4eStZa1U0XC91OEY5a2k0bWc3eVB4YzlzZndJalErZVlpaGVudjZpNTFSVHNOakhURUNvUHJRek1INDVXVDZldWgwOHRYRkxFbUUiLCJ0eXBlIjoiY2FzaHRpY2tldCJ9LHsibmFtZSI6IkNoYXNpbiBHaWZ0Y2FyZCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQVVDUHJtZmdjZzFKektIOTlEdkdyOEJrcEQ4SDc2SUphNVg3Q1FsblJDQzRaV3hMYnI2c0M3V1FiWWhRalpRMGxZZFRNaXNZUGwrOFFqQUVQcjFONk9Hc1dTYm9mckJoYzhvTmU2UTVcL2thSmtIVzVKRnFVZ01qbnVuK2pTRFJOU3l1TE9kc1BnT1Y5QmNLT1l3aWVoVjd2OGR2dG1TM0tXXC9sMFRNZ3dIRW40VjZiaXhJc0RrRVBkN3VOWDVwOXViVm1pS1FXN3FyeTR2WHErT0ZiYnhJV3VxXC9MOUZhd3ZLY1licUZqZ3dnc2RabFErWTV6bWxhRFNRMWhmVjlMZm80NFBoM3ZYRDdFdnl0MVBLcm1yaWZpOGhjRGVLUWZXNjZrQnVsZkl4ZXNJXC9NUzJDMTNaOGNEK1d1dFZHMHJiRDB1YzVjeHR0bTg5bWp2WnJCZXo5UXFUTEgzTUJLMzFXRDI1VXpYS1JrOEMyNUpkYjZpd3hSNU5URHJSRlF3ZkJndEJkRlNwdjNqaGQzXC9MQ2o1eWNQa1ZTTk9LUVVwaVQwR0lCTko0Zjd1eFk4K3ZUR2ZjU2pGNWp6NGtxSThYZ3IrKzF2RkFLQ04wS01xRW9lUEd4UEllVHN6U0NLWmpwdFppb054ZVI3dVUwd3ZhSDE4aXFabFVtS3k1SzhyMDBmWkFreEM4YUZaT3VLU3g3SkRkemN4N1Jidis0ZkJpTHJ3RlhMc041TnVrc20wV0lRRTd6aTZKNjdTR1h0bHJYb1wvYnBucDFkdVp6SjQzS21XWllsamdsWGRcL2wydXNySVlDMDhkcUV3YzREVUhLSFZmaVl6WmJ6YlcrSnNha0I1YlU3aVhrSnlPMG1RWlwvcEM2Zm5Wb2diNGJvOGNvbGMyZnBNNU9ENWxuaFJEZUZ6NmwwRittc3JGZlg5dnYyNHdrQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZYU1ZEN1hxXC95VDlKbmZVNG5RaU1kcmNmMnBFNDVIcDBlZDZoTWY3ZTlUZyt1WVwvZjJpNzBRcEwzZHhwdW1VY25kOXpEVVdUT0pjOGRkcVhmUT09IiwidHlwZSI6ImNoYXNpbmdpZnRjYXJkIn0seyJuYW1lIjoiQ2xpY2thbmRCdXkiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0NwakJPeTYrWGhWTkdjRDNYUWttb1pkaHY5ZmFtMzA3cW1HZERrZGllVjVjN0JOK1FaSFYyWEY4QXpnUm1tVXdUdEhHZ0N2eElBN2lJYURpaFN5cEI1WGpDOU5GdTFDRHdGczV6ZlBTMDlrdWlaeGdRWG05YW52VmxVZ0R5N2wwMDF5K240bWFRdGdYaE41b2xhVU1FUTkzUVdnMldLZUxiQXpiRTEraGVidXM4YmNqQWNwMzAwVGZJd1NENnB6dEp4alFmd1J2TnpMcmhSZ3N6UmlwaThydWlHTUkyMDZZeEpVcTV5anBWNmN1dDhNZ01maW9oM1wvXC9QTG9pVldvQ2prckswUjNUakwzNmZSVndZNFhOQnNsY3pmRVVsSENUbk02akxqakNxeUFtTkhheTNvTHY5M2tcL1V4YUpvVW85aU16Rm03Z3UrTk02VlwvZXJ1U3ZqMjhkeXB2K1VOKzRKQXMxUElPZWloeE9ReEk1Nlp2K2pLVE84R0tMMlZET2VYa0JOeTBnUW1tMEIxK3Z5RFVHU1Y1SW1jXC9Za2FmazRxZ1hQWEcwdHoxTEgxVUhndStiaDlxcjYzekZwaWxScGl1OE9rb01xSGE4Q2txeXJZRytBdTlRbDVWZmgzWkpTOVJGOW11MWxsWTJBdk5kb3VlNzVyZGdsRDZrSm9wMm5nXC84UE84dlVTdDI5Q2RlbWFtdGN0OHpRWGQ1cXdDNWp1a1czKzkzYnJEMzR0VGRLZGk5ZGxwUWFcL1RjbGE5dndWd3hFZXJxamlTS3hcL2dybCtSNm9qa3RaWFQrdHBvNUFlZXk4NUVtbE01TDlcL0NzdE9RRGpBXC9oVVwvRCtpaXhhOHo4dmxyR0dVaXNTT241RnF1M244NWliMUtHVytSSE5RQUp1NnU0WlJCQ0xoRFVIWTVxTm1HSnREOUtcL3B2eVAxZnNBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlNGY21tRnNDU1BUYSsySnRMeEMzZDlNRVdYbXR0YnQ4NXVLS3BVbnd3bzNNRDFsZ3UzMGo0Nmc1MVRhVkVUUE51NjNMWlllQzk0PSIsInR5cGUiOiJjbGlja2FuZGJ1eSJ9LHsibmFtZSI6IkNvc3RlcyBHaWZ0Y2FyZCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQjVkaDBlMFN2VFNkWlNxTllNTVh0R1NzVGx5ZzRjaExudlYwMU5wTCtXN0k5TXpcL0tnd1hZZStMWXVQMnlHb002VEF6UWFjRGNsSTNBQW5YQVFKaTcrNWF5XC9qXC9hMFwvbTlWaUtqbU1jc081ZjhTM21seFZBcHlJcDFsS1FvZDFRUldkbmZHaTJqc2JxMkRRMmhPYTJXblU1Z09vZkRQTlwvT2JaQkFoWkszRnlBQmZKdlErbUhNUTN5ekFWNlVNeFBLUjhWUlJWQnIzcWV4cGVOc2FTblQ0NkpwaWpKVVU0QjFGQUpVc0l6aXZ2RFN6QmNYekJOSVwvOUVLUWJBOHdiTGI4VkdWd0tCSHVuNXJQQjVqRDF1Q1JqdnQ3ZDBYdUE2aE5aaUo4eU1VOFp2NHlEY1wvWW1URVN0TnpabXkrWmpTWk9IV0tPem95Q0RqZklDSm4zUm52aFdKSkROTGZiWlwvOUtRVjhOY1BtNk1wbTBmQ2pmMTUyVVo5WU1wMm5LaEdaaG5panorWExHa3pVZkFva3JKQjlkK2UyRW1pTWE0Q1J1YldcL2d3RnJnMHlXSzNjVVY2K0ZzSlQwTnlUS2todjVcL2s1cGFEdnAxR0YzSnZJd1hQSnpwVUVrWVRvbENYQmVsZCsyWU5jZGp2VkVXQzYrWUMrWEpvZnFTanMrRWFuS2NvRzJnaXo2UVh2OUVTWXdJT0xRQzdUY3hIaHd2SnU3bjBxRVBXV3ZLVWRZbnhXNTdaWkt5WmVBbHdsWjNsNm5Od3Y3ZDJjdkV3eFdJXC9NU2YwZHFnTjBtdk5KVHhwRXBEYjdVdjg4SWRBMVFIQnpsOHk1UmZuXC9YVDg4eVhqMjFCTjJ3dnFBbnZDb1UyMkZndEs0MVRpNkhCc1JSYWtYZWFha21pbEpmMEh4RFdoK3dleEhub2p0cVhHV1pnUVp4bEFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmUTZrcXdTYStmSXNkQjF1aklRQjNVM0VnckdsZFJiNjIybnVQNXZDZzl2Wk01TWQyZGpmbW5ZSUs4cG9qMVdRTzRcLytacExUenhyUEZZYmsyUT09IiwidHlwZSI6ImNvc3Rlc2dpZnRjYXJkIn0seyJkZXRhaWxzIjpbeyJrZXkiOiJlbmNyeXB0ZWRDYXJkTnVtYmVyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkU2VjdXJpdHlDb2RlIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkRXhwaXJ5TW9udGgiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRFeHBpcnlZZWFyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiaG9sZGVyTmFtZSIsIm9wdGlvbmFsIjp0cnVlLCJ0eXBlIjoidGV4dCJ9LHsia2V5Ijoic3RvcmVEZXRhaWxzIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJib29sZWFuIn1dLCJncm91cCI6eyJuYW1lIjoiSGl0ZWxrw6FydHlhIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCWm9zVDVSMStcL1M0ajRIR0VOV1dBXC9pUGVRZmtqeHVqaHRPTnBQYzQ3aGF1VHpEYWVxV0hKVmhcL2htdTc1NUJwV2pVXC80WE55ZlBYZWRGT0hSTkNWZzJyNldya1lNeFMrK0FHeUdzTXBqdXA0Rk5uYjM1cGtXQ1pFazNtZXVvaWpodlRxYnppeVpFclVDNTI5TDIyQmdtbUg3Z3BheUJUSkVmMkRTWW5Uc1N2NTJBNWllSjdiUHJvY2IyeWxHV3lMMFZoWGR3UVZZZlZkd29ZWGJhVlwvQVp2dTlzNXRmNzlFd2Y0bXQ2Y25BeXRFa0pTWGdaNEdPZUZIdEp5UGRxcjlwZVwvd2pBU3JvZzdYTVMwRXpoWjdyR0k3ZUI1NDV3R0ZpandtblNsc3JGMEpLTThuRWdmVEVuU1c4czlhckVFd0M1Q0g5dThhN2FoZ2ZrY1I1Rzh3a2E3OGJkOG0wck9oNzFnb2JhWHF6c2g2bkRMSnhvVkpJN1FGNXAxQW9vVEpKSmlsOFE4SFpkQmxCRmZ3QlBXSElhV29uODE4SkNnTkxuaHljSXBMNHBKNXYzNEsrbGg0TlE5STRiZTE3VjN0RkdBWHZYRmlHZUJNUDQyZU1UWGhHd3R6T2d5d3JjS2NMZGNyemxseGxIYUs0UEVvTWtoZUpGNWhzbU1RNTh4VzBuWit6RXdPa09IaDZzMENGSFIrRlR0SEp2a0hxV05BVzVMUTBsQ0VtMTdxd0crN1Y0S1oweDdmSVlOMjJ3QW1zRzNRc0pPMVFpM3FvQkJabmNDNnBwTGp1SW1BZ2hjT0hCd3V1Qk51RFpoVkVRcTJNV0NLdFFINGFtQ3ZnaGhCa01La1IreThvZEVHNjE4Tk9FZnlGbDloZVIxM1ppMnBDK0FcL08rY0N6Zit4QTZ4QndBditMckVwQ1NUamRlZm5BTEFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWG5nVjlFMUl3RFREMEZvOVwvYnVwR3VzbzZERnlabGowbUk5ajBQTHQ2SGFmQnh0bk1sK29IVkJidWtaZmoxcmo3QjZzZU09IiwidHlwZSI6ImNhcmQifSwibmFtZSI6IkV4cHJlc3NQYXkiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0FsUmhnMlwvWnFTZW13cjhJaCtFUE9keUlJMmQwRnFkK3Z4V0VibkxobThhVEZHazVjSjdCWHdCdk52cDcra1NrSzIrdTYxU2VLemJZbHdrOHdaWmVMVzlablN2dEZvY3hFSFlyaUF3ZzBWNmZlV2hNRmxWTnd2TXdxWlwvNjQ5eStlQTZLRVgwZUN4TkpMSmdHZnptZ3lYMklOM1I3U0VCelhvaWRGRElcL0J1OUwxTDBvVG4zWWpxOXpHanJnbWxQQlVWOUNVTE01YmV4SDZhdFdaSm9YdlFkYVV6RWg2VE9HR1RZNm15RmwxVUVWazUrdEdQOGltbnpwQWlOMU5FR3VBelJhd05oNHloZmtQcFEwQ2ptMkNORkNyaTQrQTN4KzIzalhrUkZTSnRDc1pJeWw2QWVYdGJEZEJFd25SazlYTzBHQ3hxVHd2b3FNVDFtSXA4dHI5dzBWU2lVUWZPMVlIcmt5XC9OMURMamtXdUFtdVprVzhya2dPM1hWaHdydGNsbUg4K3lWaGowVm85Tm1ySklROUk2SXF4Y281KzM2OE44cGx6VUNzZUFsV01taWhkbFNqT0p0UTJiaG5CQ0pSMkErMUtTWWs5MmJBY2NhZTJXUU1XVTJjYktaeFVJSU85SWR2ZW5kb2FMelhqXC9PdnBNdzNINk92U2J6VytaNkJGSzFpenJOUmlsclV5UE9HNXlMXC9ibm1wSEp0NHVlb1gyMkp2bllDUTRLT0JhMkxqNkVVRnlRYlpieXYxNnI1YlRFcVg4a3NacVZwTG5TSGh2eXg1a0ZjRm03aDI5XC8rR3paOGlcL1ppKzFXMTIxR0J0MzgrWm1tTlR4NGl3UlJQUTd6Y3AyMzhjUG54YXJ6SE9McFdIbXI0MlZLclU4cmEzd2k5aTJBb1FoZDBoQVE2Z1hBeDVFc1lCQm9zXC9UelJUYk9BRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlV0SDB4ZCt5VTZGcWhkanJ5TUc0ODNOYkNhOG9MZGhSbTlROXVOVHdJQm1xcWFDV2ZBVXJWVzUrSUlxMzdEWVYzMD0iLCJ0eXBlIjoiY3VwIn0seyJuYW1lIjoiY3VzdG9tX3NldHRsZW1lbnQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0NUXC95QXNHc0lDUHNZSUc3aGlPd1o1RCtiMU85RytLN0dmUWZiSnJZbWZGVlBialNxaFwvWGFLZFphKzFtVGk1Qkt3dVVBVlwvVmxPUGtQUTV5SExTOVg2RHFCOFlxSlZTZVdFQzZIc2ZYMzFcL0FOSjdaY0w0SEZoVnEzUk02RDBiXC9WM2lYNERvT1E4eUhxUHlcL2JOSFl4YWlGNDNwc1VIZEJqV3NReUZWbGtWaGY0SmhDNGZKZFBsT2FjYWc1dHd5WkhEdFdNOFF4ODAyVDNHRldVako2VTA0STBBaWdVQlRNUUg2QmJrdGh0TW5DWHNvaWU1K3ZiV25kRDczdjhsdWd1SHdcLzV3aDVlYnd3c2dtYlZMemkwXC83T0lUUzk2aGlBUXFSMnU4ZEJTQllLaFg0RzN6ZkpobU5KeXAxZzJ6NUJVN3RKcFwvSVlVK0xTRHFrUUpubVVlRmhRR3Qyd0FGSWdGcWpJcVRyRkR6WURYaXdiMlUyanlncjh2MlR6R2J0XC9oVFRrbnZcL3hWU0F6VTVEekFESnM4XC9udjdsMHVQNVhXQUVGWGZJN3d1VUh4QlR5U2xJV1BBSFwvK3VveWh1K1FMZkFUMWpMVzRzck5UUGdNbkZsZ2l1U1JWaVwvS0dQQWxONEhPMk81YnhXeFVaXC8xMzZBazhFbDdcL0JNelI4dGpQUkc3T1VqWnArNGVoaENYTmVlQkhcL09KXC9GeWtOdXlzS1NrbGhiT0U3VGcrTjBwTlpcL2ZpRU9nQ2gwT1dhbThGT3J0TE5POUxaXC9NM0hKaUZZbk9UOGpkSHA5ZHZVSUlaOTc1OE5cL2pHK0VaclZ3TkwwYmZIMHRoTytHaFRLQ1BzZmNPM0o2clRZZE9wVzh6TWlqZkxrK0tDalZReFRENm9jMjdIYTIzTm02Z2ZOaEFQVlwvdytQdGI5ZjRXY21ReXFUdUdGQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZSNzVYVytqbjdFY1lNMEY2K293WERyYmhpKzYwazF6MXdsS3IyN3ZJeUF6cjhVOTFKbTE0UTdFemxMOXpybGJYZDdPemVNVmpiQU9DZEh4SmEyTVhBPT0iLCJ0eXBlIjoiY3VzdG9tX3NldHRsZW1lbnQifSx7ImRldGFpbHMiOlt7ImtleSI6ImVuY3J5cHRlZENhcmROdW1iZXIiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRTZWN1cml0eUNvZGUiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRFeHBpcnlNb250aCIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImVuY3J5cHRlZEV4cGlyeVllYXIiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJob2xkZXJOYW1lIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJ0ZXh0In0seyJrZXkiOiJzdG9yZURldGFpbHMiLCJvcHRpb25hbCI6dHJ1ZSwidHlwZSI6ImJvb2xlYW4ifV0sImdyb3VwIjp7Im5hbWUiOiJIaXRlbGvDoXJ0eWEiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0Jab3NUNVIxK1wvUzRqNEhHRU5XV0FcL2lQZVFma2p4dWpodE9OcFBjNDdoYXVUekRhZXFXSEpWaFwvaG11NzU1QnBXalVcLzRYTnlmUFhlZEZPSFJOQ1ZnMnI2V3JrWU14UysrQUd5R3NNcGp1cDRGTm5iMzVwa1dDWkVrM21ldW9pamh2VHFieml5WkVyVUM1MjlMMjJCZ21tSDdncGF5QlRKRWYyRFNZblRzU3Y1MkE1aWVKN2JQcm9jYjJ5bEdXeUwwVmhYZHdRVllmVmR3b1lYYmFWXC9BWnZ1OXM1dGY3OUV3ZjRtdDZjbkF5dEVrSlNYZ1o0R09lRkh0SnlQZHFyOXBlXC93akFTcm9nN1hNUzBFemhaN3JHSTdlQjU0NXdHRmlqd21uU2xzckYwSktNOG5FZ2ZURW5TVzhzOWFyRUV3QzVDSDl1OGE3YWhnZmtjUjVHOHdrYTc4YmQ4bTByT2g3MWdvYmFYcXpzaDZuRExKeG9WSkk3UUY1cDFBb29USkpKaWw4UThIWmRCbEJGZndCUFdISWFXb244MThKQ2dOTG5oeWNJcEw0cEo1djM0SytsaDROUTlJNGJlMTdWM3RGR0FYdlhGaUdlQk1QNDJlTVRYaEd3dHpPZ3l3cmNLY0xkY3J6bGx4bEhhSzRQRW9Na2hlSkY1aHNtTVE1OHhXMG5aK3pFd09rT0hoNnMwQ0ZIUitGVHRISnZrSHFXTkFXNUxRMGxDRW0xN3F3Rys3VjRLWjB4N2ZJWU4yMndBbXNHM1FzSk8xUWkzcW9CQlpuY0M2cHBManVJbUFnaGNPSEJ3dXVCTnVEWmhWRVFxMk1XQ0t0UUg0YW1DdmdoaEJrTUtrUit5OG9kRUc2MThOT0VmeUZsOWhlUjEzWmkycEMrQVwvTytjQ3pmK3hBNnhCd0F2K0xyRXBDU1RqZGVmbkFMQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZYbmdWOUUxSXdEVEQwRm85XC9idXBHdXNvNkRGeVpsajBtSTlqMFBMdDZIYWZCeHRuTWwrb0hWQmJ1a1pmajFyajdCNnNlTT0iLCJ0eXBlIjoiY2FyZCJ9LCJuYW1lIjoiRGluZXJzIENsdWIiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0FvN0lubWpyZ0Z3bUE3bG0xZVNpRU55MGNEZTkyUUs5ZUNmdHlaME1Sc1NxdWdHWUYwa05kRzhMQ3c5MkZMY2VNbm5salRHTTVoaG1sVG5oVWxCRVNTZmJTT0xmOGQ0RUNDY2MyVzRnVkNOb094Y2NIem9RT0ZudW1qd0s3XC9OdzJGOGdYSUFwQ3hSVUNuemJaZFBkWGJ3b0pSYWFrNUtPSWttZ1N0RU9CQW9pa3Z4dmNja3ZPc1A1Szg0dEs2UWx5YXZMN3BYRFNWSWN3c2l5S294elc0N3dqQzA0dGk3RCtEa1BxQmI3cHpoY3g4RnU0Y1wvMjhBaFh0aW5OTVBMdERQakRGQTR3a0xIdlZ1VUJURWlSeTI3eDV3Y0RXYkhPVkVNblA1eXFLbUp1RDdNc2FkMDl5OVF4SlBnbjl1OVNsYlA4M1p4UFJORkQxamp4M3owZnRyUVwvOEd1MmVcL0JRMWliMUVTMWVSN25PRzA4cjVhWjhMcmtKTWRidXhZSzVFT2JDQXYxTEthaUpOTjBFdXJzWnNxKzBsTFIzSTZOZHR2eGxJQ3JpbUNZUzJwQjJ2TlhvaERGOFE2Z2ZjRlpnQXA4Zkg3cVZtTVBub2t1UDRJOTQ3Z2JEVGRcL2dIXC9zeDVmeFVWTjlvUlFXQ21oTlwvNnkxNndNQ1c5RFY0dlh2RTF6VWFUTkRNNEUxRXhpaHIxOVVLeWlmQVwvRHJOS2dmQkU2M1NTYXY4blQxdjNONDZHWmJSOFhmWHMwUjZpYWQ3bnhnY3JYOTc4b3A0ZlJ0MnR0OHdjaXN6dWxBb0RRcDJ4WENBRlRjczM5bUJxQkUyOHpoOTd3RDJ0djJtbDRTaldVMkhKZlh3WDB3WVVBWmRiYzVNMGU5YTFScUx3TTVibEV4N3ZlUjVTYVV4QTBaNWRNTDk1THUwR2pkbkR5clRiUUFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmUmp6MWpuanE4bjFuQWg5Ukd1YkJyV3dQSmpMUzdJaFJhYzlTenJZYXVEZXFQY2tlbjRBbTBYcHZ6ekpKNk80MmJBVVltTT0iLCJ0eXBlIjoiZGluZXJzIn0seyJkZXRhaWxzIjpbeyJrZXkiOiJlbmNyeXB0ZWRDYXJkTnVtYmVyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkU2VjdXJpdHlDb2RlIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkRXhwaXJ5TW9udGgiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRFeHBpcnlZZWFyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiaG9sZGVyTmFtZSIsIm9wdGlvbmFsIjp0cnVlLCJ0eXBlIjoidGV4dCJ9LHsia2V5Ijoic3RvcmVEZXRhaWxzIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJib29sZWFuIn1dLCJncm91cCI6eyJuYW1lIjoiSGl0ZWxrw6FydHlhIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCWm9zVDVSMStcL1M0ajRIR0VOV1dBXC9pUGVRZmtqeHVqaHRPTnBQYzQ3aGF1VHpEYWVxV0hKVmhcL2htdTc1NUJwV2pVXC80WE55ZlBYZWRGT0hSTkNWZzJyNldya1lNeFMrK0FHeUdzTXBqdXA0Rk5uYjM1cGtXQ1pFazNtZXVvaWpodlRxYnppeVpFclVDNTI5TDIyQmdtbUg3Z3BheUJUSkVmMkRTWW5Uc1N2NTJBNWllSjdiUHJvY2IyeWxHV3lMMFZoWGR3UVZZZlZkd29ZWGJhVlwvQVp2dTlzNXRmNzlFd2Y0bXQ2Y25BeXRFa0pTWGdaNEdPZUZIdEp5UGRxcjlwZVwvd2pBU3JvZzdYTVMwRXpoWjdyR0k3ZUI1NDV3R0ZpandtblNsc3JGMEpLTThuRWdmVEVuU1c4czlhckVFd0M1Q0g5dThhN2FoZ2ZrY1I1Rzh3a2E3OGJkOG0wck9oNzFnb2JhWHF6c2g2bkRMSnhvVkpJN1FGNXAxQW9vVEpKSmlsOFE4SFpkQmxCRmZ3QlBXSElhV29uODE4SkNnTkxuaHljSXBMNHBKNXYzNEsrbGg0TlE5STRiZTE3VjN0RkdBWHZYRmlHZUJNUDQyZU1UWGhHd3R6T2d5d3JjS2NMZGNyemxseGxIYUs0UEVvTWtoZUpGNWhzbU1RNTh4VzBuWit6RXdPa09IaDZzMENGSFIrRlR0SEp2a0hxV05BVzVMUTBsQ0VtMTdxd0crN1Y0S1oweDdmSVlOMjJ3QW1zRzNRc0pPMVFpM3FvQkJabmNDNnBwTGp1SW1BZ2hjT0hCd3V1Qk51RFpoVkVRcTJNV0NLdFFINGFtQ3ZnaGhCa01La1IreThvZEVHNjE4Tk9FZnlGbDloZVIxM1ppMnBDK0FcL08rY0N6Zit4QTZ4QndBditMckVwQ1NUamRlZm5BTEFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWG5nVjlFMUl3RFREMEZvOVwvYnVwR3VzbzZERnlabGowbUk5ajBQTHQ2SGFmQnh0bk1sK29IVkJidWtaZmoxcmo3QjZzZU09IiwidHlwZSI6ImNhcmQifSwibmFtZSI6IkRpc2NvdmVyIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCWUZhaUtERDl0M3BwSEhNMTJwY3BoZlNma3pqNVhRbUJLeUhGeVRnWG1Sd2dNNURDZjVwXC9xbTgzSEowUnd2OCsrM1ZreXRFR2tXNWV6ang3bmlBXC9SN1hSR1BDNEpGZTVtOUJrTlVhZDRPSkpLbjM4MjQ2SVg1XC90Q1RDNTBhYXpqTERTUkFZRGZPRndqQ0szaUN5M2paZGJIanNheXEzU3hrMHVla3RWQ0FmR3ZnT3RnRlJ1XC9xYkt4ZkhZWDVKaFJoUkQwa0xIcW9QeSsrcjFxRm9hOVpDQWVJdFB3T09JaU9oNnk1c0lTMGVna2FcL3ozNUpGSXBtUGdaQTNUMEY2QzQrMVwvMzNMcWZcL0lteHhhMVdieHhPSytoUkZrOXhLTzh2V0ErUUxoc05LaUdCRGR3cnJQMUlCWnUyXC8zR1JsNGM0dlR0XC9hVGZ6Qk1zWUVBRWh4WUt2ZHBtK0hMdjF1dlk2MkZQOVZ6WmM3K0c2dExnemhFTGkzVWdrOWIwY3FXMlFrUWEzR2pSYzlveUNtbHhwVGczYU4zSFcyV2NETE5INW9iR0FlSVwvS1YzMjB6Tng2RGNwNFFIZkpxRmhhamJpSDBrSnBNMGYxNFBKRnFGSXZranJ5cVwvM3h4NHJxNFZXVHZOWWJzUWZka2ptanhkcHVaQTJsVkZiTTdGV2xmcjZkdWptdzJcL2srTmNcL0xOS29jWExQTUZxTnNBRTVzZ25CQ2lhdWR0Qmh6TW5cL0pxZzExdXVlalg3UHd1dmhrSDJJRGUrQzk0MW5pVmJkSndBVFQ1cytyYzVNVTB2ZThsWWJhbm5nbHU3dkxwYThBeStkYlZpUzV6eVBUQ1lBWU9oUDRoVVZQYjRJU0RKZk1qYVorN0hIdlRtQmJwOSt4R2xySU9Vc2hHOHFraEEraDJJV0hWc01GdlBLbWZCWlNybHBBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlpFRGsxT2hYdWgwMm1PRHR0eldCT09GYndXaG41VTVWQmxuUVo0cHpFRmdmRHRlWXFPb2dhSjFoZml6NWhDM2NpQWVmZXpoQWc9PSIsInR5cGUiOiJkaXNjb3ZlciJ9LHsibmFtZSI6ImVmdF9kaXJlY3RkZWJpdF9DQSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQUNrWEpZRVdFUVZHYzFjdllIclwvUEVUb1diRUNEY1gyRDJTRVhCblpwTUxoOXBDRmV0MkdycDZRbThCYlJ2UjRvNGVxWEIyRmJmOGRncCtQbE9ZZVZwRjJCMXNLcml2NTZZT1c0K2VKT3g5M0JRdXZGamhxY0RBZG51QTFXRWQyYzBwMFZSemQ5MkNMVkVkQU1lU0paZjQrSWVuVEoxeHFLZ0pVcThBRUtCMU40RjZMTEtNSEp6Z25OS3NpbXlMaXRLZ1c2RFZwcmJhbWJmS1hMN2pETkswV3JIb1wvOU9VQkozMWVJWFRGUFdPVjdDT3d2KzIyWnBSbittbmtSRm1OUDRPb082TGZnbG9Id01ZNFpvVldyYkZGdDdVVERKdzRIQXdKYUVpT01qSCtwcmpFZXZHcUtoZW83NUh4cHNtbXdSaWMrUDBESmtqaFwvN0xpTkp1S0FPUUMzRWFmclJDbkVyVEo3bGdsWU4yZTJnMDZLc0ZUZ1BGSTgwbUJtNDRcLzVNRHAyYXJub3dsXC85a3h5UnVZMkVPY1ZrbVprSHROK1BDcWRtSFBka0tHRzQzSUM4RTJiTWdCYUtKekxyXC9UTDVvRUI4MGZFdzJNQWQzSUpNem40V2VjOUlodHA0Z29CSFwvNXN2TGg4TVdHY3FaWlFIODBWYmRLSjQwY1dOcXc3eXNjcXR0REh1OCtEV0VScXBZcGtWK3ZPUkxzWmVGVEFiM281U1wvOVJISXpCMDJlYXN1VEJyVktIeVZYZEhtU0g1Nko2Wmo5MkhxanoxMVpXUjhKVkhrWVc2REdxdlMwbkhJNmlRZnlyMWdHT2xTR0FsOFRacXI5dFhtNTdsbVNXYzFQVjM3XC95MkVXK3hZXC9QRldGeDlyZzZ6K3BaRStMaVpwRkdlK0JLdDVHaENPTVdlMkdTdm4wYlNBVndpUUk0ZENBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlVER1BXd3BHXC9oOE1KOG13dXBSbE9lT0k2TTg2XC95eG5SMHdFSHMwVXhPTmZ1NlJaODA1K3FrYklNMkowUDRJN2dtZE1sTFBjbnNDcm80TGF0ckJyRjA9IiwidHlwZSI6ImVmdF9kaXJlY3RkZWJpdF9DQSJ9LHsiZGV0YWlscyI6W3sia2V5IjoiZW5jcnlwdGVkQ2FyZE51bWJlciIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImVuY3J5cHRlZFNlY3VyaXR5Q29kZSIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImVuY3J5cHRlZEV4cGlyeU1vbnRoIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkRXhwaXJ5WWVhciIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImhvbGRlck5hbWUiLCJvcHRpb25hbCI6dHJ1ZSwidHlwZSI6InRleHQifSx7ImtleSI6InN0b3JlRGV0YWlscyIsIm9wdGlvbmFsIjp0cnVlLCJ0eXBlIjoiYm9vbGVhbiJ9XSwiZ3JvdXAiOnsibmFtZSI6IkhpdGVsa8OhcnR5YSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQlpvc1Q1UjErXC9TNGo0SEdFTldXQVwvaVBlUWZranh1amh0T05wUGM0N2hhdVR6RGFlcVdISlZoXC9obXU3NTVCcFdqVVwvNFhOeWZQWGVkRk9IUk5DVmcycjZXcmtZTXhTKytBR3lHc01wanVwNEZObmIzNXBrV0NaRWszbWV1b2lqaHZUcWJ6aXlaRXJVQzUyOUwyMkJnbW1IN2dwYXlCVEpFZjJEU1luVHNTdjUyQTVpZUo3YlByb2NiMnlsR1d5TDBWaFhkd1FWWWZWZHdvWVhiYVZcL0FadnU5czV0Zjc5RXdmNG10NmNuQXl0RWtKU1hnWjRHT2VGSHRKeVBkcXI5cGVcL3dqQVNyb2c3WE1TMEV6aFo3ckdJN2VCNTQ1d0dGaWp3bW5TbHNyRjBKS004bkVnZlRFblNXOHM5YXJFRXdDNUNIOXU4YTdhaGdma2NSNUc4d2thNzhiZDhtMHJPaDcxZ29iYVhxenNoNm5ETEp4b1ZKSTdRRjVwMUFvb1RKSkppbDhROEhaZEJsQkZmd0JQV0hJYVdvbjgxOEpDZ05Mbmh5Y0lwTDRwSjV2MzRLK2xoNE5ROUk0YmUxN1YzdEZHQVh2WEZpR2VCTVA0MmVNVFhoR3d0ek9neXdyY0tjTGRjcnpsbHhsSGFLNFBFb01raGVKRjVoc21NUTU4eFcwblorekV3T2tPSGg2czBDRkhSK0ZUdEhKdmtIcVdOQVc1TFEwbENFbTE3cXdHKzdWNEtaMHg3ZklZTjIyd0Ftc0czUXNKTzFRaTNxb0JCWm5jQzZwcExqdUltQWdoY09IQnd1dUJOdURaaFZFUXEyTVdDS3RRSDRhbUN2Z2hoQmtNS2tSK3k4b2RFRzYxOE5PRWZ5Rmw5aGVSMTNaaTJwQytBXC9PK2NDemYreEE2eEJ3QXYrTHJFcENTVGpkZWZuQUxBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlhuZ1Y5RTFJd0RURDBGbzlcL2J1cEd1c282REZ5WmxqMG1JOWowUEx0NkhhZkJ4dG5NbCtvSFZCYnVrWmZqMXJqN0I2c2VNPSIsInR5cGUiOiJjYXJkIn0sIm5hbWUiOiJlZnRwb3NfYXVzdHJhbGlhIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdDdnVTZSs2bzFTVXp6Y0h6eHdBVmxrbUMzU09KY2FhajZJSzNoR1dTa2ZITU43VlRnRU9KUlNaZWZSTjdQWk1HRjlCSzJNXC9cL3dhN1FaTkVSWGVxUGtcL0Rva0JQWnRBN0ppcjFBTktaQjNMczZFSEtVTVp2R3ZpUlZNdDZ5dmc1UllrYlAwMlwvQ0c5MFNZTDFnWlc2NlI3YkIzbys3Uk02MFwvK0hDQ0lWTWNnTG1uM2pJVlwvRDlEb0w0bFo5UmRtXC9GSVZCWHp4emhtWHp4OUZXR08rSWp3emFkRjY1NWlkSmtWOUZzXC9ud0Urbkd5TjhzTVwvbllCektNWVlXMVh4c3ZSOEpZS3FrMVhiQWJEZitldVhSVk5YaVdtZE5uVGw1TVBHWEl3dFwvRDVDbVZBWk5QaGNQMTc5d1g2M1FhQyszQUcwZVpoeW41VG05c20zUnQ5SU1zbmtleEJZZDloU21TS3AxbmtxNW1nSzNSNlFRSlZzOHlleFdJbmRpc2VLcFg2ZWpsMjRncDhpVkhhNFIzaW8xbEJPMkdiSWRcL0VEaEN6cWpWc3BtVDUwODlSRWE4RE1DNkhCVkJuRlJPdzI2dHQ1Mk5QRHo1R2E3NTJ4U1MyZFYxNGdYRFBwaWpcL3FxWFZrelwvcmdFU1Z6b0JTdnQyaXJXQnI4dFI4WG5sOVhKT2JcL001TVFjZ2Z2NFBsWWVUQ2NcL2lUUHVqMGUrR1l6S09BN2JzeG1VcmV3VmFrbXlVdFdUQW8wdW1FUW41dHR6eGw2Um9cL1BZWDZNbEo5VE05dFZtUE1JZ1Y4cFhnN3NFVEo1U1oxZW5XMEZXYmN1VnErVUFrZUhsbGhjMHFudVlFWFlReENobHNFUjhFbzNQTmNMTEdOSElCYU1sU3J4dEhLeDB0dHNTbVBNQXVSQkhWN3dwNlpIQllvZXhMMTliZm44Z0FFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmYmNFMk9tYWdRd3JJa1JidVB5bTY0ZitvXC9ZbFVFQWpBOWl5ektQOXp3b2drK2twQ2JCdUo5NjZmd3dyM0RPa3FPUUc1ajlJb2pvTW55ZkdyVG5cLyIsInR5cGUiOiJlZnRwb3NfYXVzdHJhbGlhIn0seyJuYW1lIjoiTmF0aW9uYWxlIEVudGVydGFpbm1lbnQgQ2FyZCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQ2plTVRDQ1dieUhrTHFJemk2V2hPSXMwY2ZHeThvaHF5bk9GQWNoUDV1a254NXpvR0dsbW5uMXlOVzF3b290SG5ab1ErREMyRkduQmNvaysrQTZFSzl0cEFQekRqMmExNVptQ2p4VlwvU2tRVm55d1d2UmZMNDl4UXNxMHZmUVNZS3UwN1BWTVQyWTBHV2lsWFc1TENKRW9WOU5qMEFBYU8wNWlUVHd1dUlcL0xpQll3U0xjSlkwR3lcL25Rb1ZDR21pMEhSQlNcL2xnRnpsWmI1SkgzZjc3U2JiQkRrSEd1UXpLNlhSOHF4R1A1bFUwN0c0cHdKMnJsQkhkZEVZVHRlbWRKVlMyajdTVVwvNWF1WHowUENrZ3NnQVY3Q29ITmJjbFlzTDZGRjlaUkpiV3lETzFRcG9kblk2eVNvM01xU3VoU1IrdjJzSnhxSVlTNk1Od2lZYkpQSmo5TG5mN1pZMTU4ejF2OVlmTStYTFpFQjFndDBQdThUcVNUSnIxNTA5emF2Uys1d2VmajJubTVIRlc5OERobzNkWEo5cDc2T1Q2TjQ0K2o1eW41QjViR3VoU2Fpbm9Ra0lFSndjNUpNM1dpdTFaVmdOTFlUM3dNcUh5SUVWQXJRaDhoWmxJU1Z1WnBoeG5VajZ3OTBJVkJuVW8zY01VQ0xlZ2plRm9CWkVZSGkwajltR3FNVmd5VEw1Ymkzd1BIN25oSVl1WGsrTFpsQ2NHUFBNV2J5cjVlYkxUUE00RjJhRE5kRlo2V3RYa0JWT1pUMzdQMjduTkZYVnczWlkxVDZaaEhWNFwvTmlwSnFXVVRRd0o3YmtmOXFBeW03YW9aYzdBeW95VEtNNnlERjQyeEtLN3hVK0ZnTkVvbE1CSlNvZnNodm5sYlNzajBGbVwvUFJEME54R3VsQkJpTkMrSWlVaWcyMlJzeFwvVllmRjltQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZSR1wvUk4wZG5RemhEajd1WjJmRU1ka0dsZGxldGtQVEF5YkM4d1lCNkxMTTQ1b1ZZUEVMalpYN1lVakJ6YW9aK2N4S2hNcUdPZm0rcyt4aDRwTT0iLCJ0eXBlIjoiZW50ZXJ0YWlubWVudGNhcmQifSx7Im5hbWUiOiJFeHBlcnQgQ2FkZWF1a2FhcnQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0NUc3pKY0xYVCt1SnhHdHRpZ1pibENtWGsxZ0FYMjB6MzdBZURDenRyU2dmQmUxQXFuaWs3UlhKUHVhNmFGUWhtd09kZWVmZkM1MVE1NFJUcHBta2FGQVluMitqN1NEa28wZFNSYkl2Ymg3bjJkbzNyWVdGK1RZRHRvYTBFYmZiZytzYmJqZ0o4eVh0dlwvT29oc040dVIzZVVRV2FEWWt2N1FqWDNqRFA0aFwvVjJRaHZSWXpPZjlDWTBxV3g5ckZtTXlHOTcrQ2s1dmx0cFFIWEFBakZhRVpVQWpKOUc0Z3JVdVdCeVZpRkJ0ZnFjYXVON2FcL3VaMnlhZjExZ2lDbTk2WWp1MjdKZTh3aEppS2drcTNqcTFIckV4N254MW5xRjZ2UzF6NUpxeXBSc3ZYWnB3Mm82QXc3bDlONUtTWDVHRUsrREd0ZlwvNW8yWFwvT1B6YWtqN0pxUklCZDRcL2N6Q1ZEcFgyZDFyaDFGOFVTVEVCT3lUbUFtSkhNbGRnNFBhVlBUSm5PUWtYWlFMRVFVMGZSMDU4UURtVUtRNVg2c09cL3NzTDZ1SzRIeFA5aU5yWWw5WmpFUmlGd0VZZEpJM05acThLZjVtY0t0bGd4WUJTWnZ3bHVkMldEdjVOTlRcL09sUlJyQ0o4RGZPOG95a2dSQXJ0Q08xZ2FGZGhndWFUOXFXaisybDg0SmhybGRVVmRKYlRnWnRQemRDK1JhTWt4c0VLRU5XSWFQRlNyN0o4eHlxajZzSTlLTzRaMHY4cXRwMFhuZHlcLzNMZkVGSlc3ZDk0aUViZzF2ZkpoRHJwK3JERHhiTjF1ZnN3Y3ZFTGl2MzFEdUJQeWozellDRGRydXVHdGZCYTA2akNSNVplZFwveGREcVFFWXpGVHZ3K21LVngzMEQ2N2wwUG54NmhESFV2cnlmRkUrVDhGdWFFa1ZpS25YQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZWbWc4SHBGVHEzK1BFT1owYm9Da3hSNUU0bDNYbEFIWUM3bzJRUFwvZ1UrY09mXC9STGxORWQzcHdNZ3BGckErcXErTENTYTcxb0NzNldLQWQxdz09IiwidHlwZSI6ImV4cGVydGdpZnRjYXJkIn0seyJuYW1lIjoiRmlqbkNhZGVhdSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQ3lqeGNnWEoyMFltbVp6YWtzZW9kNXAyUVZTXC82elhSb3dMRjFRT1k4TUxvZFJoS2NcL3RLRndxZlVObWRzTmU0T25aZ29VWm5VenFhZFBkbnFHeTFlcm1kUWZ2MlJmYjVaTnR0VzRXdkM2YVZ4RmxUbENPRldNOVV0V2dIME8zc0ljNTZQd3Uzb0NvaTRGOTVyVXE1SWpUazhIdURWK0NKUFdqS1ZNRVwvMXI2V2dLVERLM0NnSVJsUTVwSjlnVzFKcjQ0b0dlbmRWSlhYWDdiZ3ZaQXc0Rlh1a2NFeXRKZGVGdzl2VzRCVVwvbXdZWVJ3aEx4NHJ5cTdORFRGVEV0TFFhOUpNRXRVbCtCYUxTZ3luS3IrQ2huSDNDenJaSGlkUkd2K29QMm5hWUhEQU1kNEhHanE1K21qc0hldXpNMm1kQXE5Q1E3cVdGQkpSZW1ZSXBKMGsrOWRDQTlJQXF1UUNDTG4wdGJkUk8yTDdtXC9rMEsxTnhEdHR4QktXRDhabk01dGF5eWYzOTNUaHU0c1ZNYVJLeXFobmxZdHlEaWt6QXIyMGhDWFFJbW1MbUQwZVplUUJKR3FYelVDR200OWJ5eTBzWGdEbnZaOVY4UFVYeldQRlVEamNhNGcyRkJybXd4M1BaUUtueU54d3IrWXJyUVRjd0U2d05aRExiODJ2NVkwTXNudzF2WEVOWkhNeVo1TW1pUEdcLytjQkdMbW5yNFwvWDFZdE95ejZaQ2NTOUk1cWhKcW9oclJ0eE4rV3lFd0NlbGpqeHlkcEYzaUpBMXdQZXFUXC9VSUFxOE9vanZCMFVxbzUyb3BGRHdFeHE3Yzg3QkJlUUFHRlZxZDBGVzRNVjljazhScDNzQW00YVFZMkQ1eGFuVW9EdEVJKzJYbmpHMHc2Vmg5d1JNaUJDOXZpMFlseTZYa3dLaWhPeGVwNVBOQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZZczdWejJwYUFHcVBuWHlYQnRPTXJVOTZWOHJZKzVpY3BGdTFZWFN2bmVXcmF6c09PM04reTNXdWRWZVU5bVFGVkJsU0ZHMVVmNnAiLCJ0eXBlIjoiZmlqbmNhZGVhdSJ9LHsibmFtZSI6IkZsZXVyb3AgQmxvZW1lbmJvbiIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQlhaT3N1eW5aYXN5M2VqcU1WYUpIajdyQkJteFRkQisxUWxqWGxldW5cL2VRSHRMQjJ3K3JcL01PcUVib1R6QWRMcll1XC9nQ0x1V1MyTzdqSTMrNFpldkhXbXgzS0EwcE5OWjlxMUNOTTZ0TEh3UTBuc0d3RE0xYnVURytnNXRSVUxZMTNNNDRZWlU5bzBRV253bGJtXC9EbXhBWXR5QUtJdWZ3RFwvVHVYSFZPaHMrbGorVVdjYW1KcG5MSjNPcXdnWHVId0JXa3daOUFSbjFcL3NCQWxWS1lZXC9QbzgybUtybWFseTdHbzlwSlIycFMyRU52VjZqWVRTaWNQUDZOSTZ0WW51ZGRnazNUXC9BUHhvaE5LK3Fjcng3TGEzcmlTUmw5MmtLNTlcLzdpcmdjdUVxY0VaRVdYMHp6bHJqeFB6endseFMyUHhSUnpsdG5LeURMczZoejlQUHRUOXJaZ2lZeWhcL1ZuUHpJRnhRa2xmK2lxYzdhbVY1V2ppRE9oS3oySlwvdHBZS01DTGNieUlzS1VcL1RtTEZPUml1ckN3VTVNdExXYUlVRytNcXVsREtQTmxHdHd0OWpZTFdva1hOSHhUdVdzZmYxTTNGS0pjM29mcXRyYlNDaHIwN1NvRVg5YVpEYTFtOGU5MU82TUEwcU9zUjJHYlVzRFVIZFp5WE94N1wvVjBwZXNtQzJVR2pHWkJ5Sng2ZENNZUYwRnZmODIyWVpMMW90eEdSTEI0SExnU2tYWFNLdjFYRk45R3NYNmRGYXJGNmlPMlNQaGtjVkpMVWdkVm1Xdmg2aVFIRCs1cnc0RTlkVU5zeFdnc2NDck8zK0NVb1pzaGcxM3lyQ2FORkQ0bnpITnR6K1pmMDFzMFBhd3BEOFp3U2pxMU5yQ3ZDYm1pRnJGaVlFdGlCM2Q0UkFuclpTbEg1WURMWFRncW9zTGZXVDNBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZmJPTzI0MzlROUJmUTNCeUpKTVN3ckpEdlQ2U3kxTSswYlNWaG1zcXI2UnMrVG1PcjVwQVozRjExSisyMkFPMGFTazRzTEhUV08rR3BxSU1RUDNvR2c9PSIsInR5cGUiOiJmbGV1cm9wYmxvZW1lbmJvbiJ9LHsibmFtZSI6IkdhbGwgJiBHYWxsIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdBZzdRa1YrNGtuMXZVTEJrYjRsUmhpN2J3MGRSaVppZEM0dnFiYUhxa1BQaTFvYlBNNlRKdVwvdHdwV1loTUxZcHBmdnNjUTU2b1VRVGh5TjA3TjdcL2xid1pHZ29WNnRnRnRkN1pCdHJncUpQUG9WTThzZExCbVJMQzZuQlUzZDNVN1h1NFN2dGxYMkpRbXhqNnQ0ZzB6Y2dVcU5oYUxsTWp4UTVjbk1tYld6MGhaMHVzdExYMWJpTTVnazdGR0RXNVwvZTczdk5nYlwvckFrZlFSUEJXZmJHTEVDK24wK1FCYWxEdVNlVlpzM1hOZEFwNThtaGNodmlFbUlwcEtRTVA1Yytac0NMeWVxR1lNOVJPQXY2UVVidFhVS0ZpaHJ1WFFETGtxUEpBQklSZVRwdWpaRnhxVjBON21NeUpiRWVoN2lrU1hLcWpRbXFxdFZadCt3Y2lWejVrY1dSMWsyN0tcLzNXVjFWeTlITlQzUHI1RGRhNnUwS0ttXC9HNmxmMW9qMDV5YW96RUpoSmtnZHJKOGxyU2UxMG9GZkNFcm9Ob2o3YlN4NHhCb0E4SUtaMUY3anF6YlJSQ2diRmFrMk9CZ2JPbzE1NUhjM21RQXh0Z1o5dGV5Y2pNZktBam8zeGJsaFF1cU9iUVVSTXAzM3BidmxDTCszVG9VaWZ6NWVoeWRldnJITERZWktcL0FBN3N2NDRBaUpBeTZXK21nZkZpZlhKTTMrWGFzVkJOelwvb3RvXC9zdGp5bWFGTVZWWEVxcGFZaVdPS3NPbW95cU5rNW1ITU01WkZGcmZ6OGxGd29qa2tqT2xRV0NJNmQ4K1BlUmxHcDlkVzh3bUtPdkZKRytScFBtWWozYzFTd2RHVDBwZXZRbzkxaFpCQjQ2WXBuNUtYeXZTZ1wvdDR2YXRMcnZSQmFYcXd3dkNNS3dZd1RBXC9IbHNZU1VBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZldcL2VSS21qdzh1b2FXS09Cb2wraHNjOExcL1d5VlpJSWkzTmxPYTJxMERDYlhDamUzMWprRkxKcUhKM2xzM21CVFwvQTZldz09IiwidHlwZSI6ImdhbGxnYWxsIn0seyJuYW1lIjoiR2VuZXJpYyBHaWZ0Q2FyZCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQkhNbXhvWlh5bWpzVXdhSnVnXC9xZm9URzRWQzVGbTF2VlR2QmdGUURzVW9kcExreWxDK08xenlZM1p1XC9NaHVEUU1wbTJtU0ltZW1BVWVCcTE2dVNsRUJuSngrb1FFZE03c3kwRFRmWEdUYUdxcE8wTUV6UDliQkxkSFZLdnk5SWVNWFJKS2tqVHVPU3RMOUJOMXo0RU91U0pxRDl6RUVOUE1CSjI1NGxFTUZYQ3VcL3NVUUJoWUg0WjBxSlpSd2p0ZDZBZEIxVWM4XC9xd0dibW50S1VIeCtCeGprXC9BS0tIcm1kRmxWSlwvMmZqYXZrcUpSSWM1QXVDandwbkRaXC96VXF4NHBESG1HXC9ZM1VJdENDRm1TWktGRlRzUE45XC9JRk1rWWhmS3hpcHp2OTZlSE1KWFY3T0FkRVZocGxISFc1N2dxRU5iQU9jS3ZnVEJ6dnR4b2tMdFpUSVFaTk00NXlIREJsa1hOOTZUMGZVNFpoZEk4Vm1Ga1RrMGtLV3RrZWQ0bzVCeGhSaGY5WXNyRzVzYnlcL1hOTUNHYlh1YlRscmhkbXNnNzRxU3Q4MkdIWHl5TUs3KzFxRklcL1dRek1ESGNXXC9nclNsbFV2QlI4OU11andiSFVyalZnUzRRXC9xUU5TRmV0MDdkNTNVWTNtYU1zcHhkcGplbllWUFwvNk95TWNFMFNRblIxWlhOSG05T0ErVEE3TlIwSUlFRkVHNFh0ZHpodURjOGFjVzJHbEV2U3hzVFdMNDRJYUJZNlBSaWxwZEY4VTVDSkhrUEVXQzRjcmlMcHhlT3BrWDJ1bGdkYzFXc0ZTd0VKa3paUkdkcTRXWVdrcldhTGZWd2o5SWhjM2Z0SzJzYjk5MjhWS21ETWc5N2djNTJUM2ZoMk5TdjJ1VlJaR1Q0QXlcL3dFcG5CQzhFdlwvcVwvQ09xZnpGcDlISE8yV3E1QUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZldXkzZEQ4TjU4XC9VV0pmR0NYZkZ2SG1RRmo4RVYrQW1zK1FFczRjK2RUVUgxdUxHaVM2YXp4dE5pMHNaMW51bW9CRjFGc0JhVE00VkR2c1d4ST0iLCJ0eXBlIjoiZ2VuZXJpY2dpZnRjYXJkIn0seyJuYW1lIjoiR2lmdEZvcjIiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0FWUGZ2UkZZOW8wUlJBdGIrRjhjMmtZSGIrYU9sb2pMVUlcL3RhXC82dUI1VytZNnlGRjl2Q0hZNjlBaEdCMzJrSDZFSEhPOGJ2OTg1QUp5YVJ3Z0RzNFF5em9mTkRldmF6N3pEYjRFVDNBaytRM3NVMk9iTzd3VE84VEFQK1lDVE9LZ0ozalphRUt0K0V4ekNDODY0NnVUV1J1V1FcL1RCN2oycDV4NE1FdDFHYjNrMmVoYzg2MDhyOG9MeXdZaUlRSXgxWHl1dmZSVkRIdHRXY05qK0x6YTF0UnIyUVRUaEZkTFJhXC93TmZ1SlB3MVwvQVlGazdIVXpoaDRBQTg5ZFF6U1JZSHMrM2NnbFUwVmRNdm0zTkVndlhZcFl5TkpHaGJDZnVqZlVnelgxWmZqSGh5MW1RUDVzeVNQbTVoWHhqdkZcLzZkZVNNK0hhU1NaR3cxK2Y1TjM2c1Zjck1OWVBLTVlsaDVjNnp5Mkt6ZElJaHhtK21FSWlDNXFsQ201Rm8rWEFMcFVuVlpmdVZpTFBXSXZRQ0lGRFwvbVE1YjZMTHlVUUszSWdUdlF5SG1GMnlhTGlobGdmT0h0OGdpekpEbUhPU1BNTk5QYjNtbm5tZ0JlSUt2RU4zWUhsM2dZXC9QK0wweE02eGgwRFJvN2dRNVBMWFBHeUYxRDAwRWFzeDFobTZ4M2tFRit3aGVmUm9NMFRJMzI5THlmOUNcL0RON2dSQnU3dFp5bDNOTllqUFd6VTBtSmZUZEpPc1c0dFQ0bHJ0dkc5ZHJDKzZyazNIY1B0dmxzazVqbDVmRjFsd1B0WjByeEpEM2tMYVVhM1hSaDE3MU9hTVwvWmlPbHdMUm9SQ2pOR1Vka0RTWmcyeWhKSmlGd2JGcEdmSUFYSnBKMWtqeER3XC9TY0JFVlhlNlNSRFJydk94eDhrUm1HRm5vV0tXamZcL0NBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlNHWGh5akc1azVGbzB3aUxjUUZxdWFkQVwvem14b1NmdWlpVFwvXC9UcGxRbExuK25NRFpielBBNmx5M2d3VEgxYlZMa2JnQWlReDRRT0o3WT0iLCJ0eXBlIjoiZ2lmdGZvcjJjYXJkIn0seyJuYW1lIjoiR2l2ZXgiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0JOaWZkcllvRjh0R3VzOTJ6UGFrRkZYaWg1VXB1VCtlTk5IRFV4QU9aaVwvMEhncW9IN1JxYjFZN0lWUVd6RkNsNTRcL2dEVW9rYlJqcDdLTFFmdGQ0ZWgwdzByS1JadDlXRjFETDI3YkdVV1pMVnRJME5OVTlDV2xseGpWNFZCUEptbTM0WmE2QkptTWhmUSt6TFUrN0hON21WbmpJYTVBTGpXRHNKQkpMNWg4WDdvS01BOVR6VGgxZ0cxaW9tR0ozbkdHTWRaV21OczVTMDQyRnI3UTltZ3NwRm1UVjk4WmRKQXg5bkZBUWwreXp6OUpUcXppVG9iVzhUa1RPa1pGVlRCcEdKTDdKeFpqSjdqVkJXSG9XZ21KaldzRFNkRWx4ZlRleGFhRnY2QW1HTzBPN2pJRUcxXC8xNnZ4a0VJTStFQVdmaUsxMUdSVWk3SDVSNk1BMVwvRVJkUlZ2MjdBMlBzRzRVbGlCVTRhckt6UXNoSFZFalB1RTFncWpZbHo0bFF6QkNNbGM1SHd4b3hscWw5OGwxaVhic3g3TUhNRjBxSUw0QmVUTTVITkd1Q1hzUEYwalNJT1UwSXpjd3NuOXFRZlwvZkJISVlrdGxYRWc4bVJVcFg0aUNGWFZKc0t0aUcyYU1uaXd2KzA3MjRpUXpUUElyQlljdEdJQkdoSU01bnhsM0F1Q0lkNVZpWm9hS2o3K1BmdzA4alpEZDl2eUZDeWlGS1JDTUZcL2VVdmp2NWRzYTdJZlZWWkduMEdTZ2dnTU5wV0FuWVJ3S1VcL3hmZ0o1WkhlTmZURksyak9GQ2RFbmpGSzJqbUw2YnZnRmRoNVBWUjV0RHJKT1lMUlMrNE1CS2Z6eFNvVU8zQmNhV3ZyNmVoSE5RdUp3MGhHVzlTOUhOT2JnVkFqVFZXVlJCZWRHd1hVV282bEhEVGdjSFwvOFViTkFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmVnFJdzEzRU1TY2g2TjlvUkFlSDZ5eWZwb2xaMjc0ajA5WWtScmRGb2kzNjQwRTNrcm04VE9YUjZxNVBla1E2dm9HZEtRPT0iLCJ0eXBlIjoiZ2l2ZXgifSx7Im5hbWUiOiJHb2xkc21pdGhzIENhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0FaYlBBeHRYUGd5eStLcFdhbHVER2g3N2hyTkNpM3ZkZVY0bnFnXC9Ya0cyZFh1dFh0ZVljajV1S0xmRFwvXC9kR1ArWlVTb2xLSitQckxkcHp2QWJrT1wvSlJRSVBUQlFZNkpzd2h1NkM2dmtJK211NmRzRDVFQUJvVk85VGlHQnJudVwvb0pHUFVpSkZcL3VYM2hVSlU0K282TWlaQm9OaWYxMnRPYTJaU2VUWWt4bXByT3ZBd2QrSk1VSlNzc1NnXC9mUkplWEpUNGlNbG9icTN3MjBNeWszZmVKTzB5blI0MlhBZWl5VEI2aVNQT3FxT1ZURDJYRk9oNHdNTUpXTnRKMU1vZjJBa3F6RnRGclB2T1lMSkxkcjdiSUtzT0tYRmhQeDRUd2IyeURiNmVCTDJCZVJkUDlQc1l1akkzXC9CMWJVem1EZ1poeVZmbHhhbVF6dGlXR0VZc2tQQmpmYlpTSzNtMVowdHNIZzE0dHJOOEpxQVIwOGh3MmNibFg0ZVNvOWVTUHljMlcybGdJTkhEaFkwUU9teEhXRG9IcVwvcWpodGJwbUVJMW93SFFCd0tNUUVtOGRqXC9sZzd2KzM4VE51TG8yY09ORlA1NUg4dmRHNk0xZ21ydXdjNUtTZlpXeEMxd3dmTzJsb3k1Y1B3WURZa3ZrZzltNTNvQmVJYnpvdFBBTnpneEptYmNpdmlCdFErSWRBZTZXNitEVVRkXC9lcndNVDlRVmVPUDkrY0psbmdPTHZqN0RjbmprN2w5eDJHUVZVd0REVVdhY3FsMVZLNGhFcFwvaDVoNm1wSytOMW1EWE5sNHo0c2JXZU03UjhPVFJ2bzhXZUVjeEtna3ozUmU3OXVObVM3M1kxXC9mNW53NkIxbzZcL0Iwc0V0TUZFWHc2amQxRjZKTktzUjhJaFV4RFk2bGlLOVwvZjkzMWk3ZkhacUtTUVRBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZmJRRlR0QTB4VERKMmo3SEF2RjBxckUzZ2oxYzBwbEtrSzZBXC9jUTZqa2dCb01YZ0xcL0xqSGlmUXJjYlZqRkZxWHo3dHp5TGdTdVl5WVwveGsxdz09IiwidHlwZSI6ImdvbGRzbWl0aHNjYXJkIn0seyJuYW1lIjoiSHVua2Vtb2xsZXIgTWVtYmVyIENhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0JTRERXaUxwNGxZRXJzRFNEK1hpbWVWOGpWekpCNnoyNUFZMzdrUlwvcnRrWmc4TUh2UGZFZjkrcnlsanlZSFRQcmc1YlRVRWo2ajNZeGM1amQzZGI4dG8yNFVpQ2Ryd0J6XC9KV1JVYUNQVUlKdkZyV09QZWp0aGdOZENmdHRnYXFmT2RWa25NWXlVMzVsS2kwYStwSHVCdmtjcFpZeEduN0VubTlZXC9uK0dITXFqTGRzbmpNN2JrcHpURjhORXcwSkt4VUh3TE5LQ0pydlZwZTF3UDVzOFwvSkRwdDZFNDJuZTNXZ0hTS2NMZ214c2JBRXhqK0NDNTZRME5KVWdkRlVMSHZiRjZhOUNHbUZ2SFN2aWsrRE9tXC9LaE1zV0FkV0VTOXFrekV3NVo4M1JcL3BGSEVNelgydFc1Rm9aa05JUzMyakljN0hTYUt3SE1GNjdQbWR0emdqamVtd3RMTE5jdHBUQkw5TWlTZnRpNEIrWGNPRUJ6QTVMS3hUeXpIQmNGWkxYQ2lvZWFreFJ2cmE1YjNpNlBya2V4dkhyTk90eVJ3ZCs3MUYwV3BcL0UrZ3pwYjFLUko1cFJ4QzV1SGtJaUJPa3VyZGNLalBLdFhvTGdwTDQ4TlpZV2I3NEZ2TWozVzUwZTBDXC9jSkFkWVJacDd5TmYwbUN2T2hMdmEyT1JrSnZtYUNyNkpmb2lrNEpcL1lBNFFyTTVXUENpbDcyVWJ4dzFOQmNJZG9EQWtDREpiMUlyanZEcnl2eEsyZ2s3ZWJWVmQ5eHduVTJ5K3U1NmFZWmNKZ0xLSjRYRWFsR1orQ3BuYnc4NnE3akkzWVFyNUthVmZGQjl5eWhVM1p3c2hQTkkzWFFoaXJEXC9FU2tuK2o4N2xuWldwN2hDbXNuYzJyMzNleTJQa1E5NmpvNXhCVStsdVRoWnZJVlRiVkpkSDg5N3JWQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZYb0VqZXZ0d3pRVGE5clkzYmkrdzdxS3JOaWo2U1FmT1Q0M0RFVVdtQ29TMWYrRjlhTExaTWJDV1RON21MWE9rUVRNZFZJPSIsInR5cGUiOiJobWNsdWIifSx7Im5hbWUiOiJQaG9uZSBQYXltZW50IiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCaXk2QTZvMXZObTVGSlpCTmRHbFVMY2xRcFBNdzBVVnlrNXNUWkE4d2xGUXZkSHQrWXZYS1d6a05mN3N2OWxnb1VxR1hJdk54azBLM3lcLzdsSStFR1B1UUh1XC9SVmx6MUQyNmttTHhScCtObmpKeVwvbTR2eE1TeVwvMzhOZ0JKSmNyTW9YdFVnaHJjS0ZmM21RNE1RTnlaRUpcL0lYQmgzeVwvRTdhRURrZmdtc1N5N1VUZk56aGpsTHpmQlZEdExoWFdcL1FsSnpGclYwaVZpU3JWYmxIS1pFb3dxSUNQMFF3UkpTXC9YVTJnWDF4WTAzOExrWGo2czROcEJXSmthN21RNVdOc2lucFJXQUdlUitHbDhGQ1JlaXhJMDlqemlJN2VKN3REbG40UDRKZkpHbExDNENcL3BHNnhhZ3BWTzFoeU1jdTkrd1Q5OXN6MGszUW1FeldvdUFraVFuak1OUnViZm55WEpDXC93YTlBTUhyTGZINllrU2NibXV0S0FTUlNjSHJnZDhqQ0JDRUlEUTVqQU1iQjZaaGFUV0dxV2R3bEl1SWJtVzBIQnQ3bFwvcEVRZFZBVzN4N1BCVVF3dFpNR1hNdmRGS1I0WUFFK0xoc2M0MEc3RlVTbHpMeExzMmJwZk1jOTlKVXUxNHFIbmNFQWRlUzhYVmlFdll5UjQ1WmlVV1I5ejlGeHdjdGlxdDhLSXA1ZmFaTlAyUWFYOTdXN3lTTFwvaUp1SVpjZzFJeGpLelJjOXlkdG9LXC9OWnlCV0p1MTh0aTNPYlhQUE9zUU1HenNuZGlnaDJQYkNFdHZ5MjZQWFBzWEhsWTFPMURIVDd3MnJCZmczQWtmOXRHNTczNzBhNTZ2TzRMdXM1TGtadlpQbU9QSU54bHBOTnh0WDZPMThYd2hZamNQdkE5SVdSQStCWHFSM0tickRDRkJmVVJja2g5Y0FFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmVndXU1RLdGJuODBlMjF5WFJjV1d4Y2VONlNLbzRxSk5VcFFUZjRXR3ozQ2FheG81V1UyeUtGNUM3WTd5SW1QM3B3PSIsInR5cGUiOiJpdnIifSx7Im5hbWUiOiJMYW5kbGluZSBwaG9uZSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQVZJaGM4MnVyOGlySCtcL2IyWnRmak9tdE5laDY4S1huM0pOM0hwRzY4QWcrSGNVNStKOUtuMVwvVnY0WVIxSzFSZ1NCQ0JTaUIrbzdKSGhEMjZwZEhJdmh5d3R6NnRxbHRMWkFvRW1FVGZTdm9XZ2NQSXpYWTFKdG9oTlEwdEZiV0lEcTZqeU1oK3hDcWhlaVNsUUw2Q0VkcEdnY1NGUmI0RFwvSjBtak1aMm5FZ2N1WWt5dDBVcEVNeWlKWFljUmFjXC85R0hxbDh4ZkVQQVZCS0RcL1hqR1V0ejZZYTF0bmQ3MVwvNm1uQmJZOURsdzluSytRN0xyajhnejZWclFpXC81c0RWNWJxTkVOSzlBN2pvdmk2dWFtZUJ2QnpsVmZ3eXQzM3ErcXhuTnI2d2NFMUo5VkxXaGRCXC9ZS2ZleHllM0MwelwvdzB3UDFKOWE4U0ZkSGpkNVQybTRyTGtxYXYrS3hyZDlVc0NFYXRYWnRmT3JxNkhVTEF3XC9mVmt6SjlVOWN2bFU1cHJvbm5FYjVocldoR2VQYVhVODRZdGwzT1pndXFjU2ZmOFVhXC93SSs5YmhLUk85ZVdcL0FlcWYxSldTanM1MmpPMDRQYXc2M0dUVE1cL21YUWNFTmJKZnFxazN4RUFUVFVOTVZEbFNnWkVQcnl0QVU0YW8rTFpKNzd0WkVuSGRqbGNSZkljV2phSEV0cjQwYjNCaEVBYzh2Q1NNYk9lQnpFUzgxVlNINEZxMVcrTFIzSjdrXC94a2NzZmVIbHVYR1ZLeXBteW9PTE5DemFnZWp1YlBDUVZLVnAzalpqaVBVaDI5VVwvK3EyXC9hT3kwaG9pdlJOZ282c29qd1UxeGtlOUp5SkU1b3hESCtXVGJtQ3NiSytPckpKcWNDZEN1V2JzaVk3M3Y0NUN4OThjQkIzd0VLNWkxckgzQXhQaWxpaXF5XC9ZQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZmUlN1NjRack1NdVRtd2s2QjdjZ2Q5M3g3cSswV05IS0FHTnZKbnBDNllkeUNTaGp1K2VOQ3dObTA2OVlpUFM1T3Z0dk0xT3h3QT0iLCJ0eXBlIjoiaXZyTGFuZGxpbmUifSx7Im5hbWUiOiJNb2JpbGUgcGhvbmUiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0N1RjY0eWl4RGg5VmZqSzF3UHI4NkZrZTZRQVZYK0ZYdm9wOVwvOXJla0xwRE9WaGtORXNOR0Z1OVhsUGZiVkhFT2wyNGwrMElKUGxDYm04S2F1Wk1qakRab3Bybm9ZazlBZnBNUXhlWEl3dzRzSU9xdEZyWDY5U1NCcXJPb3J3XC8yMmM5ZUIrQWs0alkwUVY2NUVCUEVFbEczbWlkemVla2NNSlZsUVdrM2k5bW9hWkVQb1c1QVBiYlhWbVI3K0pEUFBDdHhKMWVyYmRnM0VTMGt2a0pNbGNZdVNnK1pRZWUxOVwveFMrbTNvOXlDWG1EYTJWNW5VcFRJeERcLzVMZjhcL1pmOUpuNjVWZ3VwVm0zY0VqMjR5Y3FXaittYzdjeFdGemRwNjdESk5MQWNBTW41TkpJeFZFeFBiNU1RMGR6NmVUb0hUTVVVMjdlUTdOeUluMmpZbXJVS1plNW9vc0V1SEF5SkRBRkFSV085OGo4Q0NpNUJOM1l5MjZ1N0FHK2NQNEpFalJaa1A3bE5hVE0yNEdwcUk2VDExQTVlYzExaGZlU3g2XC8wYzVoZGhaUU5Rb1oxT0Q5Z1wvK3ZMUkdiOG1NaTBJaDhLOFVsbTA3MmV4dmJcLzFCUnJrV1dKQ1BBMDJJQkZXMnl6V3FhOFlDY3VGTW5EakQyZU9IUW9HNVlaS0lUYnN6XC91TlwvOWFqN2UxUmVGXC9XS3Z6OHVKSGZnNUpkM0cyaVM0VEJOZ09nZmVPazByTlhiMHBPNmlMb3lhaUtzR2crTE56MHYrZ1d1MVowQjZraW5qVUVXR0c2UDA2NDlIUkNiNWE5UDlIZ3RlUVNNTEExcjJJNWd1Umk2OU8xUGIyRUVFellzR0tmRjdOemlkeWFwa3VJRzZ6TFhBZm9Ra0xhenorOWRDdFN4QU1HWXlhRUFwSzZibk9NaDRJMGZwYkFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmVFJKd25Mc2dLSnFlQjk3YkpPU0piUTl3V092TTVxVG5zK05aWnMydWFSTXNuQWVjdXdtV3lMdUtQYkE4SWxDSEZocUtqOXozK289IiwidHlwZSI6Iml2ck1vYmlsZSJ9LHsiZGV0YWlscyI6W3sia2V5IjoiZW5jcnlwdGVkQ2FyZE51bWJlciIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImVuY3J5cHRlZFNlY3VyaXR5Q29kZSIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImVuY3J5cHRlZEV4cGlyeU1vbnRoIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkRXhwaXJ5WWVhciIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImhvbGRlck5hbWUiLCJvcHRpb25hbCI6dHJ1ZSwidHlwZSI6InRleHQifSx7ImtleSI6InN0b3JlRGV0YWlscyIsIm9wdGlvbmFsIjp0cnVlLCJ0eXBlIjoiYm9vbGVhbiJ9XSwiZ3JvdXAiOnsibmFtZSI6IkhpdGVsa8OhcnR5YSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQlpvc1Q1UjErXC9TNGo0SEdFTldXQVwvaVBlUWZranh1amh0T05wUGM0N2hhdVR6RGFlcVdISlZoXC9obXU3NTVCcFdqVVwvNFhOeWZQWGVkRk9IUk5DVmcycjZXcmtZTXhTKytBR3lHc01wanVwNEZObmIzNXBrV0NaRWszbWV1b2lqaHZUcWJ6aXlaRXJVQzUyOUwyMkJnbW1IN2dwYXlCVEpFZjJEU1luVHNTdjUyQTVpZUo3YlByb2NiMnlsR1d5TDBWaFhkd1FWWWZWZHdvWVhiYVZcL0FadnU5czV0Zjc5RXdmNG10NmNuQXl0RWtKU1hnWjRHT2VGSHRKeVBkcXI5cGVcL3dqQVNyb2c3WE1TMEV6aFo3ckdJN2VCNTQ1d0dGaWp3bW5TbHNyRjBKS004bkVnZlRFblNXOHM5YXJFRXdDNUNIOXU4YTdhaGdma2NSNUc4d2thNzhiZDhtMHJPaDcxZ29iYVhxenNoNm5ETEp4b1ZKSTdRRjVwMUFvb1RKSkppbDhROEhaZEJsQkZmd0JQV0hJYVdvbjgxOEpDZ05Mbmh5Y0lwTDRwSjV2MzRLK2xoNE5ROUk0YmUxN1YzdEZHQVh2WEZpR2VCTVA0MmVNVFhoR3d0ek9neXdyY0tjTGRjcnpsbHhsSGFLNFBFb01raGVKRjVoc21NUTU4eFcwblorekV3T2tPSGg2czBDRkhSK0ZUdEhKdmtIcVdOQVc1TFEwbENFbTE3cXdHKzdWNEtaMHg3ZklZTjIyd0Ftc0czUXNKTzFRaTNxb0JCWm5jQzZwcExqdUltQWdoY09IQnd1dUJOdURaaFZFUXEyTVdDS3RRSDRhbUN2Z2hoQmtNS2tSK3k4b2RFRzYxOE5PRWZ5Rmw5aGVSMTNaaTJwQytBXC9PK2NDemYreEE2eEJ3QXYrTHJFcENTVGpkZWZuQUxBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlhuZ1Y5RTFJd0RURDBGbzlcL2J1cEd1c282REZ5WmxqMG1JOWowUEx0NkhhZkJ4dG5NbCtvSFZCYnVrWmZqMXJqN0I2c2VNPSIsInR5cGUiOiJjYXJkIn0sIm5hbWUiOiJKQ0IiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0FFTVRlUHZGNENadENkOWpiaXJqUjBBcXBPUFdGQ1YyNW5jOWxRekJxNk5nSlwvQkw4cmJzYmVZUEVFV2Y3T1dyU01kbWlGamVKS1pOOWs2c3hQV2NiOEQ2QUhnbVZEa2xyS0VkNlI1cW50TVkrTDRoTnMwVFArUWN4MUN6WlkwelVGZ3JQNEdwNXNlUkJLS3BveEdVa0FzQk1nSWVaUk1RTWF6NEVVenR0clpCXC8ycDFcL0FqVlZ5VUx5dyttWWwyQWlSRkN6RkoySHdVRkFkczNXMzdVTmxPSHE4UUJjeTRtR1FMb1RtNnNqbElIcGV1ZFp0bGtvUkxuVWhZOThwbEJlY3BaWVpiSGlUOUpDbE0wTE9Yd3lvV1ByK1wvajU4UlJPR2Z6Y3NJVE9QRGJldnVvdXN3cTkwSUpjeG5zRWRuYnE3S1FDbWluV2dhU0I1clp2NGZHUldTYTZ6RjVYK2JCaVFpeExRRDF6cXFcLzRhcHZvRW9SY2ljRUE1djZXVkgzYnBYUUJodUQ3M0hGVlowYjJncnBxOFJxMGVHVjlFVTRRV0RCM21ua1ZhUjFCenFFNkJDMGZSXC85U3hBR2VsdVNKbjdIVlhqdVZaMmJcL1hhbVEweFwvNFlITlBXMVh0RTVQSVZPZHRYSFwvTEt2RFMxY2VnNVB0ZEVaXC84M1hxangzWTQ3WFprdGRLVHJ6RStteVdKblREMUd6djFcL1lOMWtcL3FPRWlHa3lxQkF5M3ltcFBJNVUrQnUwUzV4ZWlsdW0wa2pBV1FSNWJzR0Y5V3NPYkFWSjR4UGhrWXQxVjdwMjF0ZDNnVlR4d3c1UUZERmtNU0tcLzZNWStxbWswMWdSU1JJQmZsSzBibnR2MDFZVGVHM2lETCtNT0FMYm5yWTJTdE1RM1wvcVBqSmpLWElCQmg5S3NmdytBdE5oZVhrNkswQ3NkdEFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmUjZxSnJ0UjZZbnhyaFpJQkpzWEhKRGZUZFBWTlREakdcL0tkQnE5M1wvTFUrbTJibFVLM25sc0g2Mmd4U0llRCsyMjg9IiwidHlwZSI6ImpjYiJ9LHsibmFtZSI6IkthZG8gV2VyZWxkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdDVmF5a1lkQllPZDlTWFpobXR0MTUza3pSd0VoT0szYUNxemVXN3NkaWM4QnlwNSt0aDBFRFdhZndmSUlHN0xRTGYzM1VGSXNWNUlubG1BZFZBdk1rWFJ0MkJBVGhOTHFTd0NSMStDWlpNT3o1b2tTMmRGREtHOXJkaDErS0RCNmZyWWdSVmlpc2FKNlcrYnY3N2w1NE5uRitBOEIxbFBqS3lkQ0VudjJlTjhcLzNtaTMyMUFqTURxaW04SUhyZFRZbDJwRVwvXC9SNk9FdDFiMWpBTGtobis3M2p0NmdYYm9NUHd1UVRwa05NUnhOUlBcL1lhcExrS1gwNEEzRnpxbmJlcDNCUWhYQk1mMllFWE9qUXc0cnlWbURJb2pPcFBqaGs5ZXU4VW14czRzVzk2ZGJvMGVSTlhiTmQxK1NjRE00RlpRUG04blFcL0JKK2RhYm4wdVp3cXN6NjRjSlJ4MStPNGMzcXdUc2E4enRTY2thQ0w0YjdxS1lLM3J0WWZ6UGZ5T1ZcL3d4NGZ5Tkh0YlJXNjA5ZVlPWFY3bmk2NlJsYStoU09wSEZCUXpoTHUwU2JLXC83cGRCTUE0MmNDdmlmbjBDTFwvZ1Vqa3FoaVwvMVhXU25VXC9DaVhWMVAyQmFPVExBVzJydXRFV01vdmcwYm81OHU0XC8yTU1QWEtwY2dHRVljMW9vWFd5Y1pWeFR2VEJQS2NNOEJMSkl0algzeEFCYkVFZGJDcUplZlBNU3BQcnZUN2tGYnZveHVJUWhyTUVZYmhhQ1E3aTlcL0xDWG1xRlpGMXFLclV4QlVNZEIzc1NBR3ZQeUduTE5jNnpDbDlscGZpcmhaNzNYZFJ5eHNUekZMMFI4dHhCWHF4STRJaVBGV01SdDAreFYyZ0FGcUJFQ1k5RmVvRzluTUZGZ1NsQWhCSUdHVFZUdFBJYWx0VDd4WURWS3pTQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZRaWYxXC9yQXREV0EwNU5iRXRxc1FET3ZuWFYxNUg0alFBbE5vbVdrRDRJMGNkS1dEUmlYelYyeVl0NjdGXC8yeno5SWhiTFpKNnl6MSIsInR5cGUiOiJrYWRvd2VyZWxkIn0seyJuYW1lIjoiS2FyZW4gTWlsbGVuIEdpZnRDYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdBcFlJMmhiSGVEZkVTMFFFOWw3cG5MU0lBXC9NSUtnVGxvUzF0aGx5QUZneEdcL0FWK3JZbkNRb0hTblwvdzN2V3RqZ00wcnlkTFdqUWRJcVdzWUtLZVJCQ1hqcUxXRFByWUI3Z2FHVCtcL1JpTzV3OG1JOXQzT2wwTG5JK1R3TDNOcVhSaEZEYXJNa3Ixd0JrcXJ5bkhmdmNwYkVia0xWZEtTWVdlODhab3JvSWlFQWczK3EydHBuK2ZMd1h1Q3Z0VVhxcXF6WWsrQm9cL1NZSjBtYnhJU1J6RklzRTNaQWFVbkxXdFdhSmY3cnppeUphNmp6Y3NWRGdxcEl0cE1mZW5JYXJWRmNMUXY3U2lmMUU0UTJvMVdvUFJtaHZsTk83WjJEbHV6U2FEKzFSeWNnOWIzWGlcL3Bqa0tPNFlvb0NyREtEVnRoWVhiZTJqNlJWc1pDeVpGSmU5djVFZ3AzTVVwblRcL1h3aUIrY2JhU3lQb0MwWWFjb1RcL2NuaEoyYUhUdFY2SFZLVVpQRDhFaDRqQmRpOHFBUGdiQnpyM0U1TEV0SHVTWU84cldiWlFNWVM5RW5KQjBnbVwvRHRvUE00bkhVQTFwYjBmZlNCWm1TUWdDZU5ycjg5WmZMdkpaUDdpdFpJK3RqZmFGb0FZMExmenpDU2dlM00wTHJaTUFEdnFHOEJnK2gycDZibk14NWFcL3NzTFVMN3ZubHlmR3BsMk9saFdEYkpUa3BxQTV5dDM1dXNGbmlPTXhrV25oa2NocTBCRU5MM3dYbFwvZEFpb0RrU1RkVlB4Z2ZaYU95OUZTVkpaTlIyZ0NGbVlodGg2WWs1NUZCU2NVZElpczJ0eWtuZE4xYWhTdkgzdEYxalwvSDZjTEZkcTJCMkRMb0hvcTNpM0xlV0J0dmw2MUk5OEVLK1JBSk1JRXd0UFZzV2pyTkh1Q2RXaG1CQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZlMGpNeWNURDg0RDVCQktBZDBtR01TR0hSS0graXdoZ1wvRzhnMjFxYVgxdnF4ekUxV0pucThPS1RycmdyR0VmXC9mQnhGc2lxSVFxcDU4Z0dDM3ZLdEpmcSIsInR5cGUiOiJrYXJlbm1pbGxlbmdpZnRjYXJkIn0seyJuYW1lIjoiTGVpc3VyZSBDYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCWWRIQk4wKzVVMW1DTVRtV1J6cTV3VFdXckRobDhpNnE2eWlpeVBjRzFmcm9BYnJsbWhudHZIaUFlZUdQd3duSWRqZk9ydGhSM0hjTzg3WnMwNUhOYVR3bTltaHhrKzN0XC9NVmF0K3IxNDJxczRvNU9LZElSNHVZUklCUnJqREcrVWhVVzFkQW5OdnJDQ1ora1pGdWhcL3Y3VHpmeHk1M1JlVE80Q0FPRm1zblVBcW55bmF6VnZ5WDlsTUlZb1RzZDBLWGpCNW5MR0kxRFY0XC95OU0yTTRpeUhtQ0lCNTlCdkY1eDZibnoySUx0ZndSWnRRZTlIb1Y0V0NPM0k5dGl0RGt0bWRPSG5Dc1FrS2wxMUpaU1FBSVdFaWJHbVdodVFtaXVUSEkrVnVUVzlxS2F5XC9ZYTVqNVNma2hcL2VDT0E5MFdtT2FxeW5KV0NkT0NpWXNkOUlpVVJ3c1E2U3FIN2tVb0JKN3RsMVVNOExwSnlaY0xEVFg1SE9cL25Td0E1S0JSdzkzY0hlcnlCdG1IYXZmSDVWWFA2MEZGTUNRcjk1V0NLTkZmSnY5RkNWeWRiZ2FRM1VpTWc2RDF5Qkp0SnF3T3ViNmFXeXZiMTMzS2dJcEpuaE81MjJYXC9LeGtIelZrQVJ5ZWF1T3ZSYXJzVWxpZG4waDZJWUFtd1g2SlZlSkQzRmxuRFlCT0dvWStJazJEenZCcTM1eWxmaktyTk1FbnRrRm9ZT1FaamFCKzRCSVVwODZwSlNxXC9ieHVrZkE3K01MN1ZZclhzMEcxNmlXQm4zMDhrMEpsZStxeVVocVhDM3FldkpNcDg3ZUczbXJnYUJyXC9MaTNJZmFCdDNvN0l0TmRHOWQxbDkxNGxhakFtVmp4ZUxxVzhDdlwvdElzQ25hbDZ6d0Jrc0lFN0hoQ3VJTTJDdWlNQ1J6bGhIQTNCQnBackFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmVyt3aVRIZ2NGYTNJTlU3YW9kM3hic2Fmb3pZQldpajk2eGg2amlHMmJEMllkQTk4NHlwbVo0MXVBMEZpcjZXbDFSNm5HR1pseVZkcnc9PSIsInR5cGUiOiJsZWlzdXJlY2FyZCJ9LHsibmFtZSI6Ikxvb2RzNSBDYWRlYXVrYWFydCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQVBwXC9cL0ZqdVArVUxBbnFPTEZ3blZRWDNwR3VUbFlpTW1TWFhnNkVlanhkZGJoeEJmM1wvQ1BCRXpJUmt0WXd1VnpZYk1lTnJ4YkFNUkRBckV4ZFpKTWNGV2JCSE9wOXBMR2NUNG1SV20ycG1mK2FSZEtOeWdlUzNtSTg1eGxUXC9sNThQcEhoVzRvWE96cDBraDhVRTNkUGJiUXpiTXVjYUM5RkphODk4ZGk5a0s3Q0hCT2luR3FHc2NuYkp1ekJyRCtPM1hmMk1zaFo5SnRKaEZGTmJJeUxnYndjdlwvWUV4eU1rQXZYZGRMc1ZTNzZUbHJQanFRc0NPQ0V5Q1U5K3d3alA1R1JhSUhxTWJ3eCs1dkQxWnk4WWgzR0IrZnFtRTJKQmJyTzR2U3REU1VjUkptb25aNmVHbVM0RFA3NmxRNDZBVnIxUFk0S3daT1wvTUU0S3UwWEg0dks0OUVKS1FJU3FrbGxseGErMllrR0FoNURzTHZEMHRBc3dmUTVMdnZ2bVhJRWFjS2pmWXNLTkthN3crWjQxQm43UFpUd0xZcCtGQm55bmxHTzZBbVJZZ21KU0VhZzRyQ3VlWkQwcUpOcmdjSnFNcDMzbDBlS05iNzJ3RFFMWjVFc1haN1lpaFRxOWdMXC90c1ZvOHNnT3JaVjFBS1dobklZenBJd1NOZUpKM2Nsa3FPdTI0VGlsalwvdjFrcWlESTUreW4zb2FBWk8zY3JtK0dUTVdZN2p4S21IM2xZMTMwXC9qZENNSGJQVHVnb25BbEphbHBJNnMwdmZBNkxiRmNZWDJCZ084NjdDbW94OVNTQk45RUJHN2E3Rk5CMDdQZjJrZVFjZGVhV2cxRHdsZEdQU01DdE1DMm9EYU1kMnMzZXh5cm5FT2czcmRiaDZRMzlyZmhPSk94QjBSdjI1T3JuN2pEa2FCcXZxTWYzUkFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmVG1kclNueTFrRUVIbUpENGlSY3VcLzBaUG1nU3FWb2RScTVlRmhaTEwzOFhXdEg3VDAzR1FDMUJkZ0FCQmFVZ0RBalorYWRoMkVsKzcwZjZjQT09IiwidHlwZSI6Imxvb2RzNWdpZnRjYXJkIn0seyJuYW1lIjoiTG9vZHM1IFRlZ29lZGJvbiIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQ1hUeHZwTTVOb3ZkS1oxXC84TVNKTVhtSUR6ckcxUzM1RDJ4UmdKaGxmSCtySGxjQVBkRW9lUzVFN0NjVURLXC9wQStOc3FWWFNLVjdZcFBsekRJMkhvdDF3SzgrdmhIaDlnM2hDRFwvY0N0VGhwbGF5d0JlQUtXUTFZWWVYcUNpU2JMZU5BdFREV3MxUnZQQXdzV3BEYlNGUTFWblhTK2tSOXZFXC9UMWdHOHB0aFNycFY3MmFVZ1wvTW0ybUpHTmUzQkp4em91KzJlVTBQRWlLVzQ1RW1RTnMrMVFiWkxLd3ZFMEJ5dkFUQmI2K0p2YVhKcWRaWXZrMGo2aTEwRW9hdnZjZ01RRWRUaXlJMmVGd1g3bytGMEIwR0ZSbzQ2QUNDUVwvQkR3ZWtnMyt0UGZEc2M2V0x3Tm4zQnJYQ1I2YkhBV1VjUFEwRW1sQ1JEZGcyemJUMGZ5SEFHVisycThyNkZ6dG9cL1wvTkVpM3hSSnFDNHVZdktnNGowQ09VZlpTSnNlQnV2d0thU29FWm1WeW5pMjVZNGw5UVNPZUdDOTBoSlorRkxiYm8yTTVWcWZ0SklJOFZVQmMwbzViUktYQ0FGQmpuNmlESGFcL0Z6UzhQTGtlaExrQWtXbFUxUVJVVjZxRGZPZnpNaEFUNkJcL2ZHb1hWcTNFQyt3ZHdzRWhaUDlcL2o5RG1GVHVMQlorejhMMnl5WmNEbWhLRDUxMzdpZnZ0SDdTdERhU2ZwT2RaV0JHU09UcHVBK0U4ajhBcWZ1Vmp5dW9hTkNFb3BSQVYxTGVzNG1JS3YwanV5SWh4c0krY2dVVTRzRGZLcXZEa3pEXC9zbUdHaGxvQzgwZW5ibmNnTFYyekNnbTJ5c3VMVE9SQmxWaGhaQktuUjhhRUFcL2ZhRGlpMFVJSkU5YjViT0puUkM0VmVmZUZOVnJUa2dCcFl6aG1wTnlBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlN1REdPVVoxeGlUOXB2M1p4dnpEalhkYkowSlFuYzVFV1ZyczlISzZUVFBEaUJtUkRod3Z6dnJWWU96VEpqYWViSFlcL3JnNituekhMWE1nUlJucTNBPT0iLCJ0eXBlIjoibG9vZHM1cHJlcGFpZGNhcmQifSx7ImRldGFpbHMiOlt7ImtleSI6ImVuY3J5cHRlZENhcmROdW1iZXIiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRTZWN1cml0eUNvZGUiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRFeHBpcnlNb250aCIsInR5cGUiOiJjYXJkVG9rZW4ifSx7ImtleSI6ImVuY3J5cHRlZEV4cGlyeVllYXIiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJob2xkZXJOYW1lIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJ0ZXh0In0seyJrZXkiOiJzdG9yZURldGFpbHMiLCJvcHRpb25hbCI6dHJ1ZSwidHlwZSI6ImJvb2xlYW4ifV0sImdyb3VwIjp7Im5hbWUiOiJIaXRlbGvDoXJ0eWEiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0Jab3NUNVIxK1wvUzRqNEhHRU5XV0FcL2lQZVFma2p4dWpodE9OcFBjNDdoYXVUekRhZXFXSEpWaFwvaG11NzU1QnBXalVcLzRYTnlmUFhlZEZPSFJOQ1ZnMnI2V3JrWU14UysrQUd5R3NNcGp1cDRGTm5iMzVwa1dDWkVrM21ldW9pamh2VHFieml5WkVyVUM1MjlMMjJCZ21tSDdncGF5QlRKRWYyRFNZblRzU3Y1MkE1aWVKN2JQcm9jYjJ5bEdXeUwwVmhYZHdRVllmVmR3b1lYYmFWXC9BWnZ1OXM1dGY3OUV3ZjRtdDZjbkF5dEVrSlNYZ1o0R09lRkh0SnlQZHFyOXBlXC93akFTcm9nN1hNUzBFemhaN3JHSTdlQjU0NXdHRmlqd21uU2xzckYwSktNOG5FZ2ZURW5TVzhzOWFyRUV3QzVDSDl1OGE3YWhnZmtjUjVHOHdrYTc4YmQ4bTByT2g3MWdvYmFYcXpzaDZuRExKeG9WSkk3UUY1cDFBb29USkpKaWw4UThIWmRCbEJGZndCUFdISWFXb244MThKQ2dOTG5oeWNJcEw0cEo1djM0SytsaDROUTlJNGJlMTdWM3RGR0FYdlhGaUdlQk1QNDJlTVRYaEd3dHpPZ3l3cmNLY0xkY3J6bGx4bEhhSzRQRW9Na2hlSkY1aHNtTVE1OHhXMG5aK3pFd09rT0hoNnMwQ0ZIUitGVHRISnZrSHFXTkFXNUxRMGxDRW0xN3F3Rys3VjRLWjB4N2ZJWU4yMndBbXNHM1FzSk8xUWkzcW9CQlpuY0M2cHBManVJbUFnaGNPSEJ3dXVCTnVEWmhWRVFxMk1XQ0t0UUg0YW1DdmdoaEJrTUtrUit5OG9kRUc2MThOT0VmeUZsOWhlUjEzWmkycEMrQVwvTytjQ3pmK3hBNnhCd0F2K0xyRXBDU1RqZGVmbkFMQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZYbmdWOUUxSXdEVEQwRm85XC9idXBHdXNvNkRGeVpsajBtSTlqMFBMdDZIYWZCeHRuTWwrb0hWQmJ1a1pmajFyajdCNnNlTT0iLCJ0eXBlIjoiY2FyZCJ9LCJuYW1lIjoibWFzdGVycGFzcyIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQnZiUlBrQ2RkYXk2ZWtDbytaM0dCRENXd2NHT3E1WmlUckxab1hUV0daQlVIdzVRdVhmeXBVMkdJY0VFcUxmU0oyQjNqdENEVVQ0NmJcL0xxeU9za2JYcmNmZVwvU2x6a01wZ3RqWXlJNXA1b1wvZlhBVjJFWVNhZ2RJVllOXC90ald2VEx2YWJRcXhUbUhPYnFiZVNoXC9vSWtvZTdYRE41Z2NUWmVxcE91UGUzNDh1Sk5FaG5zMytDdVRnZnVoNW4wM3Rrb3BkS2xQS1NlRnZhTjcxV2hPTG1XbnJmNmNUOVVUUXoyS3NJMW9SK0pWelNPY1c1WUFDazMxRDVCSWthVXdKYWlCMXd6aW5qSWJKQTVocGc4am9mdnFQM3BZMVYyMDJtcFdTa2k1dkdXWGhncThEa3FZemc0RlYwRTFpMWpmOFBNQkhcL2prRU9Ba3dTVjJDQ2ZoUUxHcHBYR2pTWCthR1FmaG56eHVQMkpsbUNSVk1hckd0N3hIT3lVVWdsS1MyNVMxeGtLWXVobW53U0prZmQyVXVHSXFia0VTSVZEVis4U1hpejQwMGxBdGdcL01kV01tdnhzelVad1BzUmtQMGVlQ2J2TFVnZTQ3ZFlLVlhiMWViV2l4QzFCelhlWmtHeE9PZWpcL2IrZjQ1SlFZbUhWT3ZvTGt6RURVditISGJUNU9sZXo0QVdDWVVrNU91WE03YW9cL2ptT2EzREdtelZtNmF2OUxhaGZlaWlQTzlmWWNYOGt3b0ZIWmJLY0tSVmhzVHd5WjVcL1p5MjVWb0NMbm1ZY0R0NGhrUlFlOStuRGQ1QmVQdjUzWXlJZ2treURHZWJsdzVOS1J0VGppc0xvNlB4Ylg2OHJHbm9URUE4YTRMYTdzMlEwMVFnaGloSWlVUVk2UXprTG5uOGZWeEQ3VTlMYVwvZitkQ2hJd1JJdEdaYnBTQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZYemdmcDlQU1ZMXC9HeDhHTkNSMndTMnF6REE2N1pDUTNob2tMN1F0WndpRUxzQjVrcm5PQ1o0WHlDclZVSzVRd08xNFhFcVwvbzRiTSIsInR5cGUiOiJtYXN0ZXJwYXNzIn0seyJkZXRhaWxzIjpbeyJrZXkiOiJlbmNyeXB0ZWRDYXJkTnVtYmVyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkU2VjdXJpdHlDb2RlIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiZW5jcnlwdGVkRXhwaXJ5TW9udGgiLCJ0eXBlIjoiY2FyZFRva2VuIn0seyJrZXkiOiJlbmNyeXB0ZWRFeHBpcnlZZWFyIiwidHlwZSI6ImNhcmRUb2tlbiJ9LHsia2V5IjoiaG9sZGVyTmFtZSIsIm9wdGlvbmFsIjp0cnVlLCJ0eXBlIjoidGV4dCJ9LHsia2V5Ijoic3RvcmVEZXRhaWxzIiwib3B0aW9uYWwiOnRydWUsInR5cGUiOiJib29sZWFuIn1dLCJncm91cCI6eyJuYW1lIjoiSGl0ZWxrw6FydHlhIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCWm9zVDVSMStcL1M0ajRIR0VOV1dBXC9pUGVRZmtqeHVqaHRPTnBQYzQ3aGF1VHpEYWVxV0hKVmhcL2htdTc1NUJwV2pVXC80WE55ZlBYZWRGT0hSTkNWZzJyNldya1lNeFMrK0FHeUdzTXBqdXA0Rk5uYjM1cGtXQ1pFazNtZXVvaWpodlRxYnppeVpFclVDNTI5TDIyQmdtbUg3Z3BheUJUSkVmMkRTWW5Uc1N2NTJBNWllSjdiUHJvY2IyeWxHV3lMMFZoWGR3UVZZZlZkd29ZWGJhVlwvQVp2dTlzNXRmNzlFd2Y0bXQ2Y25BeXRFa0pTWGdaNEdPZUZIdEp5UGRxcjlwZVwvd2pBU3JvZzdYTVMwRXpoWjdyR0k3ZUI1NDV3R0ZpandtblNsc3JGMEpLTThuRWdmVEVuU1c4czlhckVFd0M1Q0g5dThhN2FoZ2ZrY1I1Rzh3a2E3OGJkOG0wck9oNzFnb2JhWHF6c2g2bkRMSnhvVkpJN1FGNXAxQW9vVEpKSmlsOFE4SFpkQmxCRmZ3QlBXSElhV29uODE4SkNnTkxuaHljSXBMNHBKNXYzNEsrbGg0TlE5STRiZTE3VjN0RkdBWHZYRmlHZUJNUDQyZU1UWGhHd3R6T2d5d3JjS2NMZGNyemxseGxIYUs0UEVvTWtoZUpGNWhzbU1RNTh4VzBuWit6RXdPa09IaDZzMENGSFIrRlR0SEp2a0hxV05BVzVMUTBsQ0VtMTdxd0crN1Y0S1oweDdmSVlOMjJ3QW1zRzNRc0pPMVFpM3FvQkJabmNDNnBwTGp1SW1BZ2hjT0hCd3V1Qk51RFpoVkVRcTJNV0NLdFFINGFtQ3ZnaGhCa01La1IreThvZEVHNjE4Tk9FZnlGbDloZVIxM1ppMnBDK0FcL08rY0N6Zit4QTZ4QndBditMckVwQ1NUamRlZm5BTEFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWG5nVjlFMUl3RFREMEZvOVwvYnVwR3VzbzZERnlabGowbUk5ajBQTHQ2SGFmQnh0bk1sK29IVkJidWtaZmoxcmo3QjZzZU09IiwidHlwZSI6ImNhcmQifSwibmFtZSI6IkFtYXpvbiBQYXkgKE1hc3RlcmNhcmQpIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdDa0RCUTN0R202MWljaHh2SkJ0MHVMQXJzclcwcFo2XC9aVUNUNHYzeWVNeDFHVUhWeXdZS281XC9TQlQ5ZkExNFFJWU95QlNFdkR6SEcrRVZES2JzcThaR0dPODJBcmpFYmNwallidm44ZjN0MTBlcyszQm4rVHpseHZKaXlidWNmeG0ySXgyZDV5aVwvTVRZWWNkR0tTRlpsU3hHRlRGOVZORHpNVGtQODByelJZQXBCZHRyRnVSVEFQVzRoN3ordFd4OTk2SEJZVWJpdjBnMDE1TUhDSFMwU29ZaDJqUE9IaENtMTdSMnhCbmY4czFqY3BJRG5qWkFpTWozVm9aZW1WU3pjWU10dW1idVUrUjV2MW9VYUgzZGVBRWoxNHB1OTFpQ2dwT215VFFyWWlKZ2c4cDl1N3VVQ0RYUllBWWdvTFZrQkl1dDRQZUZtYTdJOVo3Z1dYcXJTdDZmZkhUZHZPMmtNbU8wT2djN0lsckJyRjYya29CZG5mdUoyMGpERWpvZEZcL0xhS3dRXC95eWgzcXhvMDZVU1FWTnZZWGwrSitFXC9pVWJOZ3c1RlIyQTk0SVwvMk1BZnhpTURTMHp0ZEJiQWYxUXphUzQ0b0pKM3VJUzZ6bENHR2NlbnhmUmRYTWpPWEVLbG9PK0YyQzhYTXZjdGN0SlZEZ1kzOTlWQ29naVpUTE5rejlTVFJyamc0cjVjd1pJdzRLdlhNY2U3QThLV1NLNTVCbGR5R3EweDRkZTBuXC9sajRrbzhvN1RvWGorXC9QcnlCdnRVamN6NjcraTUyZkx4dnI0aThpcWxzOXdTQmtSTFZmS0QrVmZLakp4blZ6bkRkc2ZyNWFEQmE0aEd3QU5HYkl1cUk0Z3Y3NEtYQ2RJV2JiSnFUZmREOVZBOXE0OWRnK0l5OURcL1ZoREZsVUF4ZFJMbWI2M2txUTI2ZGdBRkFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmUXI4U1ZjakdabnVBcmpRYXFCc1cxS1I2aWdzN05RYVRJS3pXSEI4b0JoUGVmUVhBbW9lN1R6ZGd6ZFJiNCt5b0FZSlBjUFlsbkxjVDA4PSIsInR5cGUiOiJtY19hbWF6b25wYXkifSx7Im5hbWUiOiJNT0xQb2ludHMiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0JJZnpEbUI4cURHYWp2cTJcL2hHV0l6bGhBQWZ0VENxcEIzUlpMZVBcL1RHdlplS0ZQZStDTUlGblgxek50T2h5NE5QNENFRG1NOGpIeTh4WGVkUzFRZWxOMXBHWFAxblRrbzV2TXI3cWk5RUZrUWN2U3ZacHdPNVwvQ3owbmpWWWpGZ1pBQXZKd0s0WXRkZzRvc25rKzNYMHFybjY0WmJzQThpYlJHeXFFRUJBQ2x2SVk0QU1HMmNHWHlxcnUzbHR4d1ZxSWM5MzROcFoxTmVaZGdFOHpGRXVOUkxkTXRHbUFmaWdMRGtScFJmM3NPbFB0cFk5dTBnZTkzaWJ6UDJqUmpVR3k1WUxVZDFDRkpOeDdmaHRmZjYycjhtTnAxTGI5U0JDdTEyY25VTlZrTXNOSDNtYkF0SytxMkNrN0p2ZDlRS2lJUkhiSllSblB2XC9MTlwvbllBcytaMHNIQkMxYzc4aFQ3cURheXVHWitoYWFzbTVlZW0zVjgwSnVNcHcwOFYySVdkR3Vubjdwa0dLSjRsZFhVdzB0VUNLRDdEU1V1TGE4Tng2OGVpUXh5eldXUnEzUFVZR1VuczYwQzFaWGtPS3dPUU9oQ2Z4OWpzeGpOS3FSTjdxKzl6eEh5QlwvYUNNXC9mWmtJQnNpTnBCcWs5YVRDTVEzVGtTQ3hJM1RzRm9lZkRPS1pYRHFGV3hDUHE2SFZWR3QyNTlYd1ZNSUZaelQ2QUtDZEM3T2NXZW9QdzAyYUFDUXNqOWRua0txaDZIREdoQUFyZTlwclwvbVBDXC9wN0ljcEIzQkRuRFFSdENzc0ZrWFVGaE1OVnhteHh5YitKSDhGU2h5NVluYUNVN1ArZlwvSjZRbjJaOENOSnlyMlJaNzdzOU4rbnRoTWhLeE1DMkRcLzNDandWSTY2VGl4QVlJQWtaVVVobFg2WEVOOEtKcTRheUFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmYkZRcjV6RVVNb2hOK3JQQmwwU2RsdUhDWVpXdGNaQ0tWN1wvOHl6dnpEb1FZWW8yOEp5TFV2Sjg1dlBBWGg2SWk0Nk02Mkk1VEEyRzhLamUiLCJ0eXBlIjoibW9scGF5X3BvaW50cyJ9LHsibmFtZSI6Ik1vbmV5Ym9va2VycyIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQ1RCaVBUTWttK1wvcTBHdUtuZVVuN1dFb1BmMUR0TDR4ajYrU1hReEF1ZnJpOXM4Z2VzZjd6MGZEY1pTcWlBcGIwVWFIUEp2WktXSUVNb25wXC9kNUY1aDRqSE96Q05xTUswa2lUWjFsN3Z3MHNcL2FDYXdUMHkwUDdZbWg1UGdnMmxcL3diaUFkdFY5bmVGaDRuVDJNM1hiMmMrRG9cL3l6SU9VMExFVmF1VHZDeUNySVpmSHZjZmkraFp0d3daUHhZV0FsekpLeVZwbUQ1UllsZjNEOU9IdWs0bk5qZkdYWTJ1eWFmN3dcLzBFSUpJaHVrcVBuRWV5MnNpemd4Yno3cVdnYk1QQXdiV21MeW53Y3picWZHaUkzRlpwUzJ6eWFqVE9YazQ2RGNHSlNpZmM5SDJhcmN4ZytPMTFKaE9iQ3AydjJTdHdoOEREWFwvdW9aT2hkTGY0MnNqWnlpb3lnQmdmS3BPbkVMeWF4dWV2aGFlTk05Y1wvakVuWURkU0w5UDk2RGlmb0NHTEdwbjVmQUdBRHNreEhzekx5b0ZNT1BcL2tSYmJJZVNuSGpEcHdFNFk2ckZMWE9wS09GSmRqeDlBMXA4U3lIU2p4aFZcL0cxeWxrNlBuYW40NGZSak9ScEVIK3NGMlhmRElOUkN3WjdFVTNsSDg1bitQNWc2YzY2dlJiWk11R3NzYjlLdFk1eVgzSmNcL0lBUW1ZXC9rUzdXTG1iZW1xdkNDeTF2TVR3eWs3SjJOaGcrREZoTHZ6RWdCd3JEbkNReFY5RXpyZUpYT0V0Qm5RMVQ5dzluUW1ycCtOamlQVmNIbmZJUFNSRTBlbkFHeTk3ZmZmK254eHF2SCt5em02MVh1VFZHXC9CUkJqS3dxYlM0bTNuT1JEcjVrbHBQSzNOaHVVdFRxcHVDcEhjeEFCb0ZKRmFyUkppVnVIaXBLbjZEZGdBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZmFRcHlCRXl2bXJGOTBOQXd0ZnA1dndlaWdFNHM0MzNGdW8rVEJ1TXpYN1JvaUM1SWJ5NE1LZkRCcmRFRjFUUmJ6dGl5MVpPNUVjNjRvTT0iLCJ0eXBlIjoibW9uZXlib29rZXJzIn0seyJuYW1lIjoiRGUgTmF0aW9uYWxlIE11c2ljYWxjYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCTUNsSzllb3hrM0kzXC8yVWMyWFMzY05BM1VVOXFkU1lLUVducXc5Y09Ed3hhdFwvTkIycnFnbDhWZmZiVXkzbTBwdEZEb21jN2JVOGpNSG9LUm12R3VRXC9lV0k5MGJSVDk4RGpxdHYrdVNJZGd5d2ZkeG1PN3ZMcTFpbXg3ZWVHWUpxR0NnQWJKU0hqeG15MXladEU4dEJLMGRidE5CeUNiaDFjajBORkhoVG1hOVMrMk9RWlwvTVhEWml6UVwvbk55d09DS2Jkd1Bnc05uV2lVcjh3QitxRmZqVW9rU045eFFCN2VVVUNSNGIyWFVjWGhMRjRcL3IyU0tnWnVmK2xnbnVYTjhMb1FIMjlkNFM0VHJNMFRhOVVLUlBvWGRyRVwvSnZuOGFuNkhaZmRoZzdVMWJXTXNyVlVWNGFHR3l5QXBycG5jUE45NWc1alRaWGNvblZLaVFZcXp3Y3dKaGNNckw0WHlFbXZra3hINXBNOEN4Um5IR1hyQldiWG9tS09ESDFIN2ZHV01oRmkwRFwvTFlJRFBjTTJXZmEzZVp1SnZaYkg3aVwvdHVMUEk5QnpqZGZNRnpRRTZzWmJqVW1XM2xcL3d1ODIydzBUVCtCZ2NQVGYyOTN2UFY3V1g0aWpmOEpjWjBvY010UDY2STl5dnZKSW1qeTJZOE1kakNjWGlDSzRITjA0Q1plK1ZFS1dnZktDQWl2OXB6N1hqNExmUDhvaHhaZzZXOFYxN0dnSGFHK0hjNnBWKzJHcHBWamY5R3VFcXBWR1JweENFNndQSHdVSkhUZFBLOUJUNFoyZGRtUXZtakhCVWpmT2JhbSs2WDQyWGJDXC9LR2RTclwvcVNrUE91d2JwNVJjdjZWT1ppMCtEUTRWSkZ6UGZzTXllUFFQYlU3RUVjWFFmVkJMQzRrQ2hBajAxWGQzM1krQXArR0xsSFRtUUJJQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZUWmNBRW9KUWo5YU5Na01ZUmtFcE53U1Z1WmEyN3hpYVpQelwvNjgwWDVKMk9qXC9ZMGVnVHZJa1pocnErWFc3RHc3Sk9tcGtrMURBd1Z3PT0iLCJ0eXBlIjoibXVzaWNhbGNhcmQifSx7Im5hbWUiOiJOYXRpb25hbGUgQmlvc2Nvb3Bib24iLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0FHS3J6a29NanRGVHU0Zm5Cb0xqU0JFYU1lMlh4U21jTVpZQm95WEh1Qkw3OW0rSlRFYlVcL241TE9tcGplSGFWcVV4emlCNVRlajNHUjU1dDlhV1I1SFhZOXZDYlwvbXhKNHFsbTd4ZFZqYjZZdTU2QnlQOStJanBJVzJzVFZpSU9zSnBIKzQ0SHp4SkF2V1lIZW90NFhRYVVmMVlGN1E5dGdIYVJWUEtxUzBuWFdKcDdpNE54MUV4VmIyTG9mNldya0dTQ2RQNStNN3RQS3hPXC9EQnBYYTFsZENZY2IxdWJXVHl1aEhlUGd2dlRnYTZcL3JMZEtYeXZlenVLZnRMT0M5SlcrYTM1QU01TzdNM2s5K1Flc1wvY2lzWldXbnZrck55YVBTaENCckd3SVd1OU8yVTZxZCsyYmJhREJFaDlxZStHSmRVa0s1anhZN0VPczdGM01lVWJXb1ppaU5rS3ZwNUJRcXloM1ZvTFZHQWlaSlFxRGFQbE9RdFgyaUNJM2NxWWJ3Z1FoVUlcL1krTEg4UUxQYUUxU3EyZ3lBZVpvMUNDS2E1QW5tZ2o1cmhwRnQ4MVNQU1IzaCtQNk5lVk5zOVV5cFJEZm4wb01SUmZPTm9GTlBzbDkyYkxlcWkwR2pWcW1JMVJxdzhNN0hzSDFOTHQxTWpxa1YxZWFcL29SMVN2MW1MVFg3YVJuYU9iRmpUZ0RsQWUyRVc3XC9uU2lnY3h3VkdTM1p0cU5ja3NDV29qWXpEbHB1NThROXRuVFhScER5NjlMakU2S2dzQzZSOHRWdW1jcXpkSVdYbTlKd1dDWUlyTlpzamI4VlhhTkgxa2VVb2gybkpqaHVkbzlIcEMzNWdQTnFhM0o1eVJ0OTFxcVwvWE0xOVVndW5HRkJNRjFkb0ZKbitOWTRTQ0hFeEFOQ3A3QnFpNGxyZys3Qm5kcnhucmlBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZmFPSFZwRGR6YVpsdVEwRXNFeExpc1paZTlQOGpqNkIyOFNXTk01RFJ1RlZJWWVvNDVTS05ZTDQ5MXB4Tk9mZlpZR0hGQ2VId1M4M21ZU08rYU5TTWpnUm93PT0iLCJ0eXBlIjoibmF0aW9uYWxlYmlvc2Nvb3Bib24ifSx7Im5hbWUiOiJOYXRpb25hbGUgVHVpbmJvbiIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQlNkQmpIQVdGZVZxZGxTZVNxQTBRRG1Sa1JLVTlWUmJ0VjMwRlhLYWJaMkhmZGxielpMZVB6MzZGMWRjWDl6WFI0QlpvV2F6TTN3RCsrVFwvbFhPSlJpdWRzeCtZQkp6ajFXU1FrT2V5NXdWNzFWNEtxNVdQbzFsSENodm0xSG9ZbEVKXC84Sm53NzB3NG5cL1dpcTdCMklFeTM3WElvbHRERlFmemVwUTBWYzhDOGdPYUg3RGhNOGtvRmVBU3k3Q1lKTTJ6Uk1LRGZZaHNyKzVDV0hkaWEzaGZtQ3Y2N2c4XC84Sk0yeFhVOHNSWjV0TkZxUENUQ1crRE1TR1lpclZFcWU5NEM1VEpvc2FVUFFkWjM0bTNIZ1FXMGREZGU4M3ZXUGVIQkQ5cXE2ME5GSzUrbGpzWWJvaCtJXC9LbzdcL3FZa0prTGpKVzZYUmp4RlNzVXl0cldIdHZVRStnNDdLTHlRcGcrd0kwS2w3eXVhQ2RselhxcklET3FSVWx6bTNcL0d2c09sUUZuWjQ1RmJ2ZFNkRjJ0bFdxMmhzaGVETmd4MVViY3NHbGdSMnh3RHFnZlVpMURZWHdqSHZMZ2cyb3lmeUNUanZXWFpScFNYMFRNWWZyb0Q0ZUJYb1VTQkhOc3c0ZGNKMjRMTWxSXC80dURjN1hOREFUTUhXY0RkN1RHbTFlTkQzaGw5UWplUXBxY2RWcHNZMmFnN0VIcnVmazRBZEVxY2dDUXd6NWpQWHNXWHdnWlg2U0laZnlHdEU3YktOeERsOTdrSjlGUWhTdjJRbmhBaVBMQWxlZzNRcmQwNjFNQytDQWpxT0h4Q0dXQ3MydjBcL1NSM3FsUk1razRXRm4xRkhmejA0NWZTZlJSejE0eDNjRGNNa3oyYXJFdjFhS1wvT0htcE5zNUtpOCs2UkN1SE53YVRsZmdVeSt2WkdNWkFcL3huQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZXblpIM0pUXC9HblFwSlFBR21WRFpOWFViTlEwM2p5d1JsXC9ZOGNVRHQyc1YxejQ2WTJ6K2hMa2dmd2pkMW1FUXk0UkFYVFBkRWd0SFA1dHhIR3h4IiwidHlwZSI6Im5hdGlvbmFsZXR1aW5ib24ifSx7Im5hbWUiOiJOYXRpb25hbGUgVmVyd2VuIENhZGVhdWJvbiIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQU92c0dxQ0R1M0U3RGU2WE9adkR1M0dBYWRLZVhXOXBBWVZ0UCt3MWJxeEdQVXNOcE92a1I5VnRub3N3ZnVWOXZtcDFCUFVoT2pMeFwvbnRzQUlBOVJYcXJ6Uk9DbzhuOXA3UHZcL3poY0Yxc1ZTZWNONE8xYWUySFVvRnNIVXhuMU1IV2RPd0p5Z0VXRXZOWk5yb1ZlNno3UzZlOG9LK0NBYUpaTE84TDc3XC93TU1ZdG5YRzBsMmhJZWhXRXFjdytkTlIwaFFPNlFyTHoyY25la3p1MTNBNkRSM3Brd1JyWjFveXlmR3FUeHFiOEpwU1M2eHVpWGdyeVB0Rk93S2NjbW5XSDRuSE51OHFjK2VtdVJpcEwrK2RsSXAwYlMyMlloVnlzZVV1d0JCUitoZVlnWEw2aG5tTmpLcUNEMlFvczJYSjQwb08zZU5UOTZoeHkra1RQSGtFUmErTGxQbkJ4YjFGRmg0aUVpcjY2Q09lRTlcL1lHbW5DYUorR3lLR3c5QldJRjBsZytxc054WWpEREhRNUpYbmRkelZjMWY0bXRqYU82Y3lSMXpTTlFzaHUrSVhyYVBrY3podkdJNEsyQlVKcEVPcCs5ekNDV3YwMFU3ZjdIajZrXC83VUJXTTVHUVVWa0JpTVhYSlVteHpxeFR5WGhETDBBaWtOSnk0emcrUXZnSWpRSHRMOFRGZEdkXC92SDJseUt0a0RyUU5uSGZMZ3lHTTFrZnRCbEd3bjcxQnBrQmdITVwvUzBxMGxhRm5IR2x3TW1PeWRoV215MmRCZzM0VlJFZWErOHdjejZqVEtlQ2VwUnA0UVpSQXlpYlhkb3hhaDhPcEw1QWZOcXh6WGZUUjFRNXdRQ1RjZWltTDlHalwvbU5RTE9hUUx4bmtEa0REOHpzZ1duNUdJN0JEaWVwUElvTTdnZGdDeVZ5YTVkVHpNQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZUenFoOEV3bGk0aHlmSmxsellJWjJ0TFBQR3lSVkE2d1hhVGNJOCszdDRTM1ZwRmpTMWkrZ0dhdHVNVGZ0bnVGMHhGcjk5ckJDTmFvVlRcL0FXS1NqTUVUS2lxRGRwMD0iLCJ0eXBlIjoibmF0aW9uYWxldmVyd2VuY2FkZWF1Ym9uIn0seyJuYW1lIjoiT25lYmlwIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCS3huUm1kcTRjdDZqRjRBTVU4WXZsVkQ2UFRBWjhMR2dPYWo3S3ZwN1R5MWpacEJLZ1FFK25Xa0ZWTXhMV1NEVlpWOVlieGhYYTFVeDY3NmlVM0tkQXZhclozU05VTXgxNENmOXVXc2ZOYkQzZVN0UlZ1cmkxUm5cL2FcL3J0WFFpR2dCa2w5TVBJSTZrUWJpUkxvSGYyVkN5WU1zYWF6ZFpTVVZjcTIyb0xPSFVjb0wxUGkwZ1o0K25HV3pVV0tnWWgzS2pxdGF2cnBVRW85MXZCYno2TUFcL3pKOG84RG5LamhjYks0U2dIWWo0RWRyTiszbUorU3dkbThGTjN0OVd2UUNGY3U2bGpoeVlPOXFlZXNhSm81eGhncGVNdHJHd2VHaUp1b05BeEUzazJsMllpXC8wNjJJNkFvck44dGZQM05keDhQUGhxbUtyODFobVJoVjM2bldrc3VDejZYaXc0T2tRMjZSYTZ4UTNPXC94MlhnK0FaYk9vNElmdWc4MFVFclFackFwTkNlMzl0RUxOeTUzOWtXRE1ydnZiV0RvVDg2RHdSZ3Z5R2lXQWJHckRCTUlVVWFtVGNcL0xPVjNITEs5djZOaHlRUStIUjR3N1c1XC9ZYW92OEVqSzRVZjVZeWdIZEpmdzk0OVRiV0VuWUlTdXRyNTlGbU5wMUxRMVUzRmZ1Y1JKZ2NpT2o3M2xzdnVtTmw5c2JXUzl5OXZ4UEdCZlF5cHV0b2pIaWZyeHlPSkNMVUNPNDd2TWM4RVdicjdzWTJKcDRENTUydzFtZmhweUo4Wk5DK3JWNUcwWWxLcUZNTHZhcG9tcW1Ib0tkeEFZNlpxK1BUaEVaZm1xYytDQ2VDYmVRdU93b0RzNTR1NkRiU0s5cVlwU1NRN1MxSnhOVnhaVWxxYlwvKzJ6eEIwU3M5MVdwT3dKc3oraWVmVHNiQkxBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZllRS3RDWWdLTU8rQU9CRGJwakdicUt5WE1CdFhJOGV1WkJJekgxUkJSWk9qUXE0UXhtR3RRTXZoZHdUSFpTZXJNeWJTa3c9IiwidHlwZSI6Im9uZWJpcCJ9LHsibmFtZSI6IlBsYXN0aXgiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0F6MFhQM0R3SFk2N1Y4eDFLcTVqNGxVSXlOY3hoeVlUZUZ2aStvXC9Hc0RzK1wvQ1VtWk9nczM2ekJPeFpvTlFseDJvWkU0Z1gxQ0l2Slc0Mk83bDQ2UU8xOHlrNzZGalc5ejJoRWl1OE9VQnV5VngyTENPdW9HYmY2bkNwTEhEYnB0Q0plV21VVmp2dkxyRXA1ZWNYSlpFRjYxTEpSbnNDVkJQTVlRR0MySFpnK0c1Zk13Z21mVFE1R2ZsZ1NXdkpKTmhZZXdhWkV0NjdrSUVNa0gyM2ZFV2s1ZmNyd1hzSzVSTENkR2lQRnRmcm9yeWpUMTNETGltamlzOGNuNTF3QWV5cFRkY0JMVURiM1lEVlJCMEdoVE1jVEJPVWF3ZmdhNVlBK2o3aVhVQk9UWkFcL3M2M2REbmNHTFJBRnZNQURkWEhJd0FkZnpwY2ZYcDczUDVXbVV5MXhWZmRGTCt5VDh0aGREYnNpbUdNRllXM0IrRGd4SVNUNkRIdmRZUlFjV2VUV0hhZWFCYnhCTFNsc3NnWFpcL3V3WjFsNkZcL1U2MmpxK2x2cDBTTENMNVZWOWtOallMMWdqNklMcTdRNGtwQmxha01VQ3pENUh5WEZ6SlRCSU80cHBBbk53UU5YeFY5Q0dXV2VqYUo3Q1hLdHZrTWhNVnhRdVlFZHVkSnVWNnJqa2dmWjJUYUh0SjhaRGFiU1FDU2xId2dOVGJDK05tRVNuUU04TmlGV1VtUlV1RHA0YmoxeHlLc1NnVGNrVEtsR2VZVkV4VlwvRE5qTGhWRVRQNHoybnNod05qS2xqRkZVNnRzd1U4ZkxsTklTNWJTckJibnRiRFFwejlFeVhTeGxUR01uNzdLVUJIc2ZqMXNuT01JbitJeVhTdFVNaHkrRXVrWXlBczBYbTFveEJ6UFZZNkVcL1VTRDM3cDFEamZ6N0UrQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZjSW1HeXp0R1RpK2dKOHlISEJ5UmpMdndzaTc4QnBxaGlkck42T2Yxa0tya1wvMzk5WTFJZlpwMUw4VGtMVEw4Q1BFXC9qNlpBIiwidHlwZSI6InBsYXN0aXgifSx7Im5hbWUiOiJQbHVpbSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQ3BOOVBnQis1UGJ5dUNtenR4Z3c2K2FLNmFvM1dEVlwvZERBWUE0eWFlWWswa1N6Q3pTZDBCU2NuaDVRb3U3aWk4SGlqQ054ZGxMS2ErS09mUlRLMmtVZXk0SzBsSEtxempWQldnOTMrbHMxV2RJU2FTbHdONnBVMTI3amNReTdheUxodHQzR2F5NXpBU1B2Tkx1UWZiUVFVaTBCeGxicGdPeVlOMDRnT3loZGJIc2JHdlJxWWF5TU5PZVhMZzZrY1BKcjZVdE52S3ZrWDc3XC9GQXVcL3E0VXVqZ2hXZTdwWTE3NUc0K2ttZFlsbzZpVzFwcWROamRGSnZIaXp6UytNeFhvelJja2JsMnJyeHJ3NFBUUzVTcGo1aTlFYmZVb2FCZm9OdDhTckR5eEJyb2g0Y1VxUGtOYlgyZ044U1pNSFo5WHA1RVdQS1wvVGxITmZUaVVmZ0pLQXFYaU4rOU5UbURvd3ROT3VmaHRja202NzlyMUJabGhQUTl3OVdxdzRObU81bE12MlZmUWZPM3EyUUtNNERUTXpPbXM5RXNHVlRhWGl4QjNsZjZheStHelFaaU5RcGlCK1B0Q2tjSmprUnRBa3VJUjgzUnU0TVNUSTl0MTF2UFNZNHNRaU53MmhPa3hVUHpYdERpblNBSlE5NWRkUGZ4UzU4RFROUklwSWdRMDhwdW9wekVDcFdrQlwvSlhrOUU0WlBhY2h1ZVZjTHZBbTRlT2hCVVlnZ3RiUTFPdFM0aWZvaWxUSFVJU21nTUJpYStHZUk3a1BXZlBqQnVtQXZZQTZSaUdUUDlJOUYyWGJOUU5oTlBqK0E5WHo0VHYwZXp1NlhhdGxcLzVpa0dVakFyVWtGVVhzZTlXTXJBUThnb29qQTJ6bDcwcklzZkQ4RkFwcVVHQnV2aVBSQ0d6TjF6OFI3WmV0VEFnRThtcWJkc0FFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmZEhheXhybExNNFJYWXhOV2V4MGNWTmVcL2wrbWlyakR4eVpIRmJBTmRDSlVlNU10bklQem5Vbkk1S2RcL09EQzRBTWJVNjJmdXBUYlN2d1U0IiwidHlwZSI6InBsdWltZ2lmdGNhcmQifSx7Im5hbWUiOiJJbGxpY2FkbyBHaWZ0IENhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0JQOFVOd2dYQ0luckVoQitqWWRUTGs1aWE5SHp5aFZjTTkwM21qTzlhVStZSTZId3lxSzE5ZTZrek94MTRUUHk0dVZ3QzlvMlpTRzlqaitRNFA5Y3JEZXBMNmx0ejdtRWRCbzZJMWQ0alwvZFBiZ1wvaWxMXC9JXC9XT05ienlRdVltQkJ6WkkxZjFHUUc1VStpRitkMFhNNmg3UnJWUzV4VTZEWkxrRmtuOGNZXC9RUE11XC9VK0NEZGpKS0hmVFVDeUFuTmxrQmhNNG9sTUhKSzlRS1lzeERMQmJWUkMzUGVvYk5VNm1QMzl3Q0NPcUVHcGg5eHFheUZuSVpuRUkyZ3cwYXhDZ1wvbTF3Q0FqS2d3ZnpsTFh0MmNaRTJxeVwvVjl4SHhFK09aXC83ckV5QWc3WVBVWU42OVIrZmJYZlJOcTdodnhOZVowRDQ0b1llRWhDT2syazhVZThBZ255VVQ5c3gyZ2VoQlZ3M0didlJJUVBkaFNOMERRR1ZYaVIxTURnd3Q1NE5xdnlpWEVxUitndGd5UjZcL0ZjV1ZcL1wvZTFnOWcxWmN2QXpMYUZUXC9DQjFvZXBmT3loSVhlNkEyV3BzQ2dYWitpdno0c1VLTlJjWjRnY1g3Y0cyYmVCV3NHeit3OUZIYVhIbVkwUHh5Z212QTgzUGtBSzhidHMzWk0rMVowQjllaXJXMU9vWDh4VWtPK1V6ZXNDdUhXNHBjdStzcjJ3WkQ1WURTdDV0d0d6emNiY3BtU2M0WTQ3VG1ld0pPWWxcL1Z1SXdEZDRsM0R3c3NjUVNjb1lRWVwvMWVCakM2SUJPbGhybXNVYkxcL3lxOTkxN0lqOVNjWUVRMGcycExpeU04TVpZMWxMSGcxNDMreXBJc2ZrVHpJUXRjWXIxQms3aW1IZ25XSVI4dnFmNTFFa3hEV1lNbXRZQTJLdENTQnFhSTNuQVdZQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZXR0NmTjhIZzZmSUlOMVBjT0tobjVvQVhzMzBqU2ZrZXVJQUJGaGFreno0SWs2dmw2MjdcL0pJbEYxeDV5dGExK0ZVcmJtdUlrcnlhbDdaRVwvcGFPUXc9PSIsInR5cGUiOiJwcm9zb2RpZV9pbGxpY2FkbyJ9LHsibmFtZSI6IlJvYiBQZWV0b29tIEdpZnRjYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCUHJrR2kxbHhzbUhXQVo1WXNkdmNZeVg1Z1N4eHgxR0t2VGhsYXJuQU5uTlYzXC81ZGNUSTNrZnE3RUQrREl1c2N2UzMzYk1HR2RaQjB6V1drN25FT0tvZHBvXC9RbWhRcHVxc2R5MTI2aGU1NVEzbGQrQ1g5YWlnTTZlRlRtQ3F5MWJRTllxUEpEenA5Q0hsMGdLeFJtUmpIZUpWQWdWTjhpeFEwTmNmbWNKbHlrNGNYMXVudXVJOGpmTGJwUk9ZVWlqMGJMUWJRWElDNjhzZ0JNMldEYUpCOHZ5bWdOK1hBSk1Cc1JMeE5lXC83RktPYVhwdHF2NkwzSHhsZUNYZFY3aFliRXZRc1c1QlZINGpvMnUyRUNtQzdlcWVVMFlkUThxcmRYQ1hqK1RBdEk3anlPaFNyRU4yRHkxSzZkc3BMMnJhbGxleUhwbTNqbXJoUytOUkRyXC9Fcmx2RUt5TEIxK3hrcmdEeU1kRGo2dUdITmIwZzlVSjJPMU1VMVwvK2JjN0dmZUdwMUNSRHEyNHdFYlJwK1l0TmJaNWUzc0QwaDdvNEUwaVFjQ0Rwb3daMUVzTXFVc3kxT1JDdHpuYXozMHRMXC9qSzMweWZoaHVUdE5oWENcL3h2ZGxtXC9qa0RpWkhZUlVUKzFkXC9HSGMxUTNIeEpucGJxa1lUSkJySzMyZ3U3XC9sRzliOFBvYjluNUNuYk4zTXk5dk1MY0JRNWNLODZkXC9GKzBpOWhTbWorVGlIUzNjTlwvMTFGWTlUUkg5bmVOSExuYUxtZHFqU2ZPcFwvdW5vZHdcL1VnOUw2MVFnT0IwVjJkMUgzQlVNMElNV3M4T0JMRnFaME5pRHZWZW5lNUNPY1NTRVBJRmZPNCtXcTlJczdPd29yb0t3emFpemMwUWVsSlB6Ync1Z0lJY2NYUkJ1UERxdG5oYyt4WTd3RDhUNzlJTWVBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZllCVFdCVjBpRHVHSDl1b0Y0UURiRUdKNktkZzFrbVR0U0FWaXg0OEhWU0VYSGY2QVI4cVQxOVVRT0wzUFNBYVh6TmRXelA5MzlwQ2JaOWIyTHpWRDJrPSIsInR5cGUiOiJyb2JwZWV0b29tZ2lmdGNhcmQifSx7Im5hbWUiOiJTaG9lcyZBY2Nlc3NvcmllcyBDYWRlYXUiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0NhbVlGSThOR0FHUVJGTXo0ekQ5WmFNbU9SSmw3SmdxeUg4TVNFZG1OU2dWTk5YQ2Rqd3hxNDJFcFB0YTh2TllJSnhvSHdvY09JWkNSOHprT1AwN0NNUzVcL3RKOFwvR1B6NExTTXdCemM4Y1B4ZjFpR2VjKzdTd3BldFZXUStQckJoY2dHTlwvemhoMkdcL1haVDJWdWZqWnl5NnhiM0g1QlpSdHpzQ05MakFKdmQ5TGVXamhcL2NWeW1DdUtuWlo4cG8wQnhFaUY3RDZIVnZIcU90XC9pZW45Nm04aUFoQXdXajZcL2JrNEdkbWhXYXFBOERGcWIrcVRiRFE1Q3hqVnRDVkI1bkZ2YnF1SXVGV3N1QSt2VjBGY3BtSlVVWHFSaTBUNzRxTENwb2lhdnp0U2VkS0szdENzNE94bE9vY2dYNTlESWlUZG5tVFNXNlJ4ZEY4UVVhdmszeHlYNVhSaE8xcUdsTlJMWFZYa0VqS2h3ck1YSFVYSk1RdDF5TVFKMXZkOGdMQ2d3TnRKYlpPa0VyODNDNkg4eTZMYXpYbmhGR0RWV0tLWjdLQ1MrUVRPUTJtdFFqXC9iUmE2REtUZW5KWGl0WFlvS0ZLTUF2WVwvTXVOUEpaQmo0bnA4S256TURncG5KTjVzTE95cldRRmN6ZFlFVlBQRDhvWXpCYWdWUnhWQmR3QjUrN0kwaDZoeHNLZkFHWklkYlc5MzRwMkxwNzJiOFNtWE1QWnZhbDQxRlNcL2o4d0oxeDZNYmNRakJiQWN6NzVjSElxQnBPWFJGNmo0ZFdWbmR3YUtjYXh6Qmd3ejcxNjJySTZPc01SVnJHSE5ha1wvNEZTTTY4ZmZleVVIZGYzTkFcL3pURVwvXC93ZU5FckxteGp6dmJORnU3R2h2dStJaE90RFR5aTNjdDNld0dSQ1A5YitCY2NTWHdJc2dKK05rQXZESUFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmVnVIcG1lTGxKR2xSblk5VVwvNmIzcldUdFNUY2E4NXp5a3BkZE5ob3YzQUlRemxyZElnQUN1OVNPSVRBZXl2NzQwUjNmMHQyTDNmeSIsInR5cGUiOiJzYWdpZnRjYXJkIn0seyJuYW1lIjoiU2NvcmUgR2lmdGNhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0NzQUQ2UVM1QVd4VnlQTzJzSnlza3B5RmhcL3RWSVZDQnlYTTFjU1RvNWJmdzhTeXBUV2UrNFpsUEhQYzBlenQ4NERoWEVyNlRPZnNqWFM5QVNLRmthbm0rQVF2RXZXdkxMZk8rbCtUM1JweGJtT1FUR2h6eFwveTBaMkdpUHR2eWxFK0hpOTlaZzVrQXF3VzFVMEIrTXJuTjNWUWtUNVVHU2NZMlwvb1FQdHBER0l4TTNxMXBPSjF3bWM3eFUzVFJhdytDN3IrV1FoR21YdkF5UnFZZDRLV2xSa05OemFHXC9DUlhpZWtycDNkTXAyaFwvRnFNZXRKblV5b2RwXC9wM2dmQytKdHBDOFVEcmlqbDdlblVKM3BONFZMWWVlQWxVMFh0WFJGanFUMnZUNVB3YjIxWklQdlkwVmlMVlM3NWxXNWI1dDR6dkdIXC9nVTB0XC8wTXVMd0JFaTlOemZIK3pLZElCeGxkT0RmMkRhejNmQU1mbzU2VGhIQzhVdUJuY0ZZSFhZVDA0Yk1hVlNia3dmRmd4eFVYVHZcL0x3WVpZS2duT2tVNElnSzBaQ0NQak1wSDh4TGoyNGZVRVBWY1BKSTJoNkMxZkZXdGdoMEgybFArWFE0YjRxT01hN2IycGFMeUxORUZ4SVwvVjQ4S0tYQkZPdHBraW5vNnZYektFcFlXalRhbHdBKzhLOVBZZkY1RkZPWHltMzZqTlk5ZGhpamlCb0E5XC9xb3l1UXFabXJtUTk0SFlrUm5TSVI1d0Jma3g3M0hyMFU2c3RqM2Z3c2Q1NU0yMEppR0twN2JZMno4MVZDYzJ6Nm1wbWpSeWhISlhHNWQ3MHdYM2llTnFLRk5TdEh5VzUrbGtJZWFKVzQwNFN2eXRjazNrZ2NoeG91NkNLVnp2YVNtNmFDc0dUR1wvUkNGbUFqbjJaNk5kbUhCYVFyU1hjdXRBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlRENE90VldKY3N0Z3BUWTErWklwU3JXWEVPV3NTcVNpWnVRd25xNnU5NUlkRHJZUWt1bExkdVcrc096b3BNVlNTbWFSTEd0Z2RTM1kyQVIiLCJ0eXBlIjoic2NvcmVnaWZ0Y2FyZCJ9LHsibmFtZSI6IlByZW1pdW0gU01TIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdBRU9yTTlCYWdRQUpZS1pRTkNpR0hWRkZzQ0MzVnV6WVpyZm9DQ241NVhPOVRuVGFST01WMGhcL2JHbGw1N2dTN1RxaUd1b0NlSzFsNFk0VithTnY1T0M1Y1wvd0FVQllEdzExNGhXQXNldEZ3dTZwWEx2MWJyOVJJSlJjenB5dkpsbVJvbVJMUFFwYU43Y2xzMHR5cDVXb0ZGenA5V3B3S3dlRkJDMzRaSVBMRXlyVnlaRFdueFZycStrUDZwOUJmTHdHYXhqRTBjeG9UcTdWTFBZdE9wU1U3UHhmMGZEbUVkMkptYjBaQnE2RWQ5MFRZc1wvRXlOUVhcL1VXRU1qa1pzdE1HQjg2ekNicm94Qk1MWkJtRjVHRXJLSUlleUF1QXlsdnlBNExyZlRnN1QwMEFVRXlEM1g5dml5SEZpZ3R4VWtoREdXcHZLOGlTMWNWbXlncVVLM2gzRFhIdnpLbXZGT2RmbWVJODRURWhmbEZncjZIR0NOU1hLbVhtWVZWWlY5WkpwMG5Eck5XR3ZJVXFmQkNmT2M0TjlkN2dNRnFKc1VhSVc4ZUZxcHdwT2JpdnFucXRONVpNenBXcDVKYzNYZHJid2E0TjZlK2FlcjE3QXFyVVFyUnFIU3I1Mlh0WmlJV3RWczBTNVhKTlFKUmpOVVwvV3ZjN3JnNFkrc21WY2ZwQkpKbWhXeG40RVB0TnVuQUxBb01pTlJQRHhKU09vSm5NMmFhbXBhQVFsbWM4QStFR0hzeWtXQ0c0eFVqeXRMWVdjdk9uMzNseUVJQUV1aTZWcGhxNHNkQ25BZlNlYmYyZzMzQnVNWnJqekpzYWFwVmhqdEFSeEgrbVQzM2tkZ200MEQwV2tFM1JwbGZDQ0FYTDdMT1FnRXJXZFJZb0pmVHhxa1JIbEk0YndnQkNFd2VjcGgrY3FLaWtDdUV5SDZpK3ZBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZllvM25OalJIUlIwYnQrejlBaWFpR0tJM0pxOG9uZFNCVDBVUmNIR2RvQTRBeGYxaXdBOHhGNnV4K2MwUkJCVW9JTT0iLCJ0eXBlIjoic21zIn0seyJuYW1lIjoiU1ZTIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdBZUJtbUlGVk0zRjdGbUk3RlVlWDhFMDFqTWNvMWsrUzNDUythd2g3QTNjQ2ZwS3ZWdW9sazl5OG90MEhOOVorUm5ablZ6Umoya2hPR1BMNEFySFVISm1CakN4a251dVA3ZVZFWnFiQVI0NXorRk9sMnVDSHc3NTA4XC9mTExDTGc2RitXeGxpV2VcLzl6ZjZcL2tMejJyV2dvMllJakVNMklkN3VwZXI0bEN2WFpXNHBlNklSTUFCWG5SMG93eHB2M1pGeUdZN3B4R3N0NHVMaVE5TkZtYlU3XC81UThUNXM2dFN2b1RUTWhRNmpZc1FRMVVRR1V4UzFEelBhSStRa01pQk94QjZpUlBINWh2bkxkZmpuc0VCRlpxRndEeHFtSlhva0h1NXBBOFpjUEQzZ09hc0sweXhrck9uSnN2SVl4cWJnTllmMnZcLzM2Nm9zQk56c3Bjd0h5U0RTKzZxSlkzRUxPaHIzaVh1ODd6c1wvSkY5OTNwZHh2Y1M1aXNEWFBaQ1VqeDJ6dDZncXZ2T1NtbVVlaTIzVFhiejY2TitFU2RmUDJaM0FlWWJBNVU5VDlmMlQzUXBJUWVhczY5b1FrMlRQcmtxZUMzdVU3SHBlYmJnOHRrRTM0Y1dDUnhXbndydENmaFpxdDlEV01EY1wveVpFUHpcL1A5QXZwZmNEYitoUmUrZGxmalBpVk1TTjFYQjFTcGM0N2FtQUtRNDBmN0ZKcXFFUGZUZTdFcGdBb3lrdDNjT1BuSDJEQlFka0Q3K045bkpXWDg1ODZxUlh5NWlxRjRlQmdwY2U5UGhOWXJrQU9nQW5LSU5BWnQ1c0htWHF5dmJ2dkF0dzBmXC9JVml5ejdkR2pCbUNxZ1Z6QTR3cXBFeUtpNlNQbW84NGNKejFhUDlUbVZrUmw0ejNIS2hDZlwvd3hqOGF0S2grRlR6TFdRcmRER0FFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmVWRvNjIxMVwvV3pjMGRxdnhKUjNcL2pXTjAyOE1WRERKMjVyUWprclZnZnRSZ3RJamlXd203dklkdFYwbytRbkVhK2c9IiwidHlwZSI6InN2cyJ9LHsibmFtZSI6IlRDUyBUZXN0IEdpZnRDYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCb2xjXC80XC9FR05IZjFwTURFc1Vza3l6aGk5S1lOM1ZKMGwzKzBaamVtdVVSZXBXUkVSdEVod0ltWGhkbDVSMCtjbkpiczVqZWZRZkxWeXRmNWU1NjNhb0E0bHduYWRrNFhKU1wvSDBxcmhCalErOXVDOFpGd3hBS004UTBTdjh0MzRhaWR5UkFGbDFJeEVjM0dqYlNFXC91amlZTDZMd3dDb1JOT1pCMkdnb2pIR1pQbTdUcmg1UTNXU1NtN2Q2THNwU1wvcWdMTitQNVFkck1IZzMzOTVtaDRJVEhObGw0TGVCZVB3N3RGanVhT1BCN1wvTXVEeG1hdXlhSERzMjNrbmg4eHdSS0Z2eWREaWtETmpBTmFpNExXaE5YXC83NFlXQlBpUW1JMEdaMmdsR2lXVWVSZnlhRDJWaEh4QWlZZFBMUVQyR2hjRFozNW83VGgyd1g0SFNnNzZUVDYwZkwzVlhPRU9BaW51blNPVFFvMGRjWTVhTjU1TzJDUTdDeksyWHhCUmMzNkp5N0owZ1VLazdmWCtRYTc0ZUc5WUdmSEdZWXpOMlFJRENwRks3ODdzeVdjS1EwWTZBTXlRVFliY0lzXC9pR2t6WjlWMlVSeUJoOHNVQ2RhMm5ocEJnTHEwNVVCUmpQdTczT3AzRHNTNm5VNlZ4UGdcL0JqR2NcL3JidDNKRitjSGJGUURmaUpLaUZRVE9UUTI1Z3pNWjlmd1c5cGkwRUQxM1l2NFdDR1ZUYmJIR29HZVBTYk15b3BqemN3Y3FoU2IxTHlQbXBLUG9HZUhTM3duckJSSzNuRVpNV1VKNmZOa1gyU0NDVkIzXC9RZUZ4SzlQc21yMTBcL3BZcnNvMloybERcL1Nkb01lYnJkTEZXUktIQnVJOThaMHZIczF5eUM2VEpoSlwvQVFPZmp4eEQrNG55Szk0dk80M1FTcTJlT2ZzMG5BRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZldmcVJtNHg2YjF5QVBNR2lpRVwvU05ZMDVuZU1zSmpXQVA3M05pdjNyT2xRbnpsK1RSaE13VkdSMlVSc3pIZUZJd0FZRjk1ZXZ1N3EraDdVaTVNPSIsInR5cGUiOiJ0Y3N0ZXN0Z2lmdGNhcmQifSx7Im5hbWUiOiJUaGUgU3RpbmcgR2lmdGNhcmQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0FSWnhTaTlsMGJvc1krKzREaUtMalVlMVwvXC85WDRMTnhWaHpVOGN1WmxxRmc2QUtzNjRxbVUzSnozY2tCWUl3YXdBUTFVb1JQMUVINmw4N3NjSWI0RTdJdVFDK1l5K0Q4NlZ1VjRKZ1hwXC84Ymx6cTZJeDd1cnVVN1RzR2JDTWlSdithSTFEV1NybWprXC9QRDZ5RWxiRTJENnd1TjF6Q3o1dTlLOUZBSDZnaDhUenR5R3FucGowN2Z1eGJKWldHZDVWOHBpNzAzazNZZmRTREFheWNVYXZmXC82YUtZcDJvTUdLeERuZ2J4SjJsMHF3b1FmT3J3d0FWRkFvWElJV2tHbVVtazhFeitiQVRoVXptT3pKNVg5M2xlNnNKVVBRcHhOMWM0QWs1YXZWa285REs4Vld0YW1rSUdYQm9XMGNMXC9GUUR4TVwveWZ2SWJjc0w2NG9DQUZCKzVMVXY3KzVFNVc3OVlZN1dmMWY3VTFvazFiazlRV2dGdkczcHI4UHF4b0lUYzdMcGNJbGl0QmVjbGZzQkQ4QzVaNEthakpONWs2NEVDdGNvWFVkYUd0RVwvUm1iZ2ZXRFdHakljS3NDbnBSY1MzZkhXZVRGR0ZhdGJpbnM3WExcL3YzTFZ6S1ZQa1pwRjZUTkdoc1h0cXFnWmVWK3ZrSWtDcTdFXC9HRGRkcGxqTGtzcHFxU1Z2YXlZRWYySHZLSjd5b3JZKzVzMERNWGFFcUU4WklkSTVNRjNTUVhEb3pLMm9xcFlTbE9ZNWJQQUExdDliUjlQYnZOME5YMGd0am9cL2JjRktzXC9zdGVGZU5ZXC9Da1hNa1NxOFZCblYzTDR4bU9CbzNmTk42VUlPRkllaG1yWnBqelRsMXh1THpMNlRiVzEwYTJjdmZIQ3huMDlSaUZNZURlUXJIN1JDQ1RJMWNkM05teUlUQk5FaWV1aW5CQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZUVTA2XC9DVDFqS29PN29xSGpsM3NmaEdvZFhLQjFhNGwxaVR0R3M5QjNldkduUjNZMHNqdmpGekg4K3VjZFNadVdKeFNFKzFsT1A2NThER2gwaGIiLCJ0eXBlIjoidGhlc3RpbmdnaWZ0Y2FyZCJ9LHsibmFtZSI6IlVrYXNoIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdBNUVEUlRXMU1KajRlYzVFQVBZMUFUd01ZdnNnbndMVGJpcndhWEpDQ0dpQ2U4SThDZ0Yzalh5bWhpSFVrdTJKWUNWaVpjUktcL3RDejdvQU1VWDR3eGpiWmdoSGxtWnFkelA1QkVcL0tEd3ZPMlZzeHJcL3FtU290dUZ2YmJOaWdpRW1rZUJqNkxvUjdwUUd2U1ZUamNzcDFXM21MNDdzbm9nK3Jzbitqa2owcFhKaFoxVThcL2FYcmJCOXdZdXlhUFdZcnRxZURhMVBMM0JjSHRmK1owd05wZGFCUCtMcFNwZ3Era2xtVUFSSDI2UmdhSjgxRXduQ094RVNSNFV5ajE2YlB6bUFKVVR4TWFaa0Myakh1Z2hiRzV0QUpuOEFIRlp5VlRNRVlXT01cLzFhWVpCSjV2N0trSklOXC9PbnIrb1loUUlhRXZKSDNPcGxTQXpcL0RXN3o4KzhqSjArNUZydjFcL1JDQXBWVVNmSVVPbE4zcTEwT3RHa2tEZ0duUTNrdTd6TVFqNkFNckkzS1UxdHNtYXcwQ1wvQjE3Wlo0ejFYQlNnd3ZVY1JpejVNOWFOQ2c2eU5zNUVVdmRZZDZockF3TTFMRHZyaW9xK0YwZ1dsVFczZis4UHp5ZHg4R01MQ1wveGNZR1wvQ0o4S1diXC9Rd2kySlhockcrWlJcL2pFK1ZIdnpTdDZ6dVdhV25GUDVwWTVscjVMMHRraTFmYnEzdFQ4RXdMUFwvVGRGNExYN0J1azZ1djhqa1FNQzZwYXZIVEoyelNmbUIxT1pDNlZKczBLYlNhcGhTVmhlOWthNVNQcnJ6SFwvYmV1TlFwZ0lvc0VcL3RLSVZzMFlET2VwSnZ5UEhWMGZYTzUxZk9YNmR3bDBYU1NubVZucHY2RWpmN05OUGthcXJIWjRURk1hbUlHaHpCQkM1UGFNeEZSV1ZvTGJwUStcL3phbmxBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZmQrdmtJblB5Y2ZcL2ZPOGhjUGN4eXBDS01nbjhyNmJVb0xKNmdZaFRCODBpSjJTdlJXN1VlbEc2MTlTWkNqZWllandlRnc9PSIsInR5cGUiOiJ1a2FzaCJ9LHsibmFtZSI6IlVuaW9uUGF5IiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdDeXVBNkF6WVZ1cTdyMGJhajlUdlRDT2JaelkzNEdoSlhhalNnWVRxNVl0dnVxQ0xHWVU4OW1Fd0lEbDhXSmVHUG1lZW9LTEt3R3I5RDZLOHNpblBNZlwvcHJjNDRzbWxhZThjRGJqUUZWeUhrQTgwYU9JQ0NFVk9hb2o5S3UzcEdmKzFUM1wvTXVNTDl5eGFJNExGemlaUzFvVHcrSzRjYTBMaGYzYW5IZ0swY3pSM2pqd3B5eXdra3U4YW04TDJuVFpUQm1zOGx3bysyeVpUQm1MXC92VitXRVpoazI5ZGFIWldNS3NNdThsdVg1dGdXXC9FK1VIRHllXC90MnJpSHY0Y0JEQm5zK2JWNFwvNDZKbVIyMW1HWXF5SDhVd3RiSUZpU0pCbVIwam8zXC9qaVhOcndaTFwvZ0UwS0tvRFlGUTFCZWNLKzJBVCswTGt5RmR6ZXBxTUVMOWVNTGhcL1RoK0xiR1ZsWEZ0dEJ5NnZOWlVIWHhIYkhXZFczdTNSZ0JDcHh3Q2RIeStmY1NHZmFPS1RmVUJ1U0IzTndkMHBIc1NcLzY1OW9jUmZvUnhPOXBLT0dWSXF5ZTR0d21YMkF3eWdFSThpdzJtYUY4cjFKbXN2VnZUbGlpU3Q0TEpMTHZzNTFSNWF0ZkxxRzR5RnBqTjFSYjNXWHRla3puY0tmbjZrQUROOW5uVUhrSSt0aFgzWXJqMDI4VHlPWHBjR1NqaFZMQUZcL1lVRmpIblRRdWNcLzBtWStKcHlxdE9CYW1xMThER2ZGSWp3b1hBcTBcL3JSaUpWc1B3VGNjSTVqUzlNQXFad1ZPbDcwUTI3ZllZRzN1aml3YndXK1JFWmx4R1ZPZ0NEdTV4em5ES0xJQ0YwWUJlQWk1KzNkeGZMZXBrVTBuMldJSmdYTTJjWDVwZ1Z5cUxoQlVvdU04bzk2RHFSK2R6UG0ydHVBTUFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmWExWeU5KREJyK1BNYVI1c2tLXC9XQ05KN0dyYVl0bjNJRzUzT2xKaEZUdkhBa1NwU1hqcjdhTlcwZlFQRjRWOXNLeXFZOWV5SFE9PSIsInR5cGUiOiJ1bmlvbnBheSJ9LHsibmFtZSI6IlZhbHVlbGluayIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQ1hTMytMZzZMd1p1OWxcL1VJeWZrckhacndnT0VVN0cxeGZ0NzNmcU5PVCtXeloxcWM2UkdGeGdiZ2Z4cFwvWVQxYzcwT1VLYk82c2tqWUJIQXlndWdLUVJ3XC9WUlwvQzBLZVJzbVAycGV5c1dtSGVxVHIyZ29xbHo5S0JkNHZZUzlTV01PN2daeVBzODFNMld2TnFFRUNJc0EyRWlkQW9LTnRCXC9nWThSVFh6b1hNUFwvWmRoRE14M2pPd1RtSnduZ2l5Y3lKQTQ2ZDhvbzZlQUZlaU85aUpnNWRcL1ZmQzl5TjY1dWM4czBoQm1GbU9xZE1nN3U2bStRZzUycG9iMUsxVTB1RGdueGtXZGNZd25kRndqd3o1V21GWkdYWU9BMVUxVkN0OW4xV3V0OUxcL1U0TmlucndcL0U2VnhIS2ZBZ0hIWUx5TGhzRmdMUTFETFJ2MzlvOEV6SEY2RWh3VDlWb2ZjcXhPWHhmZjlEeEN2UXZXd1pIY2g2U1NLcURMTENCM3A2NnI0UnhBSitVeEJoZm1pOXJtOVRjczJBY0ZqRVpTV2RUWUx0QUJobFR4a1pCZzZHbHpsdGltQzFSVU5Jbm5tSzFOZTRMUUlkZzd1Sm5vMlBMdlB6SVhGZ0UxTVZNK0U1UG9tczhtWEpwd1pFbXNvdUlGZlpjNjJWbjA5WW1Pd1BKV2lEa2V5dVE5dGR5aU9JMTdobFBnY3NEWlRSWFE4RmoyNVJCXC9MNE5vQk1ha0Q5WFIzZnFWc294Ulc2ZVdtaGpIRUVRVHZ3dEVvUHRRb1wvQlI4MTA1cGs4ZmIzTDhTUGp4SDJqY1BDR2xGOXN2SVZXSmd0K0RVdGl0MFNLZlJLdmI4aWNRb056TnJGR1Rsc2ZJQWhMU1R2Y3Z1M0RESTh2ckxKd09Yd0UrVEJCUnJYU3FPd0lSUHdFeDdpZmFRRWQ4QUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZadmV4U2c0emJ0WWFIZTQwQjJwZHJMVjJMRHo1VlwvWEhJdHJnSSsyMlZPWDM5UjhDOXZ2NHNrZWtGYUhnWlZ4a3N0Yk96a1pDZjg9IiwidHlwZSI6InZhbHVlbGluayJ9LHsibmFtZSI6IlYmRCBDYWRlYXVrYWFydCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQlhkTUtzTUpFNlFWektvbzlLcXhTXC91UWNxRWh0TDRlMitXNnA4ZlA5bDV0TnZEQzM0eW5oUWZJOGUrWFBCM1dhd09kU253TkIxSFRlUnhOM0prV0xtXC9laTBuWmpKT2JRRnFqRDlZZVMxYzBjdVBTUk1uR2Qza29nZk9zanQzMlNGdCsrQkMrTk0yeGhnbEtxTGV3aTM1TlNJZUZwRURTNVRXMVZ1SWtMU1VzRGF5N3JkN054Z3kyT2IycUd5STVMcEpnQklLaHRlRGZMVFc5WTB2MXJvdzlmRzl4R2ZPYUdXZFNYTHBEaWk5eW1uZ282YXBcL0NEdmgrbklSbXI4UVh0a2Iwakt2MThOVkFPcEYrSWNkOGpiTkNDKzBSSVhCRE1TRmlQRTNIUTZSZzU3NDRwXC8zZEZrWVU5MHQ3Rm5HODF5M0lWdmxQYzJXREhxQ0MzN2hOS0J4Y3gwMVB1QitxMGc3Mzg0WERkdDBJbkdnZW95VHNSbkNpVmowZGdCRENDd2M1OHRtTHJHSk9DalhYVUVmVzJmUm5cL1A2SW1tYmZxU0ZFalZvNWpZZjZmWk9vcThlUnFiSUlEckFQS0V5UzRmQW12RmRYNVhMd3NRKzlWWkMxRENzZVZUc2Y0M0hjanRnOWRaYkZmRWFDUTliaStqbGdhaDVRdDdPZDZYMFpMcm9sUG5seG5FS2dMcVZvK0JpMm40QnllVWdTUEV6V2VLeWpNOTJDXC80WHo2bUZ2WTFyZVJyNUZPeUN1N0pzbzJldjBwOUljSVBseDRQUjBTVW5kS2hOUmF5dGgrMm1NbVVuUW5GUTZ1TGRoNVdGUE93WEp0dkF2aUpFZytBcjN5alFscURvTXlwS1A3eWlrOW9DTkU2czRVNGYyVmJFVVRHOENpbE1QaDRCQjJNXC9iZDA1RlVWblwvbnVSWEpQQ0lhQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZTXC94K3RseHNVa1FsRk9CMjRWKzVmVmR5NVJBT1NKNE1xZm50bk1NZDVDOVBTOXl5THZGcE1wbDYxTGw1WFo2aCs2SE1aWVRSMjZIMFM4PSIsInR5cGUiOiJ2ZGNhZGVhdWNhcmQifSx7ImRldGFpbHMiOlt7ImtleSI6ImFkZGl0aW9uYWxEYXRhLnZpc2FjaGVja291dC5jYWxsSWQiLCJ0eXBlIjoidGV4dCJ9XSwibmFtZSI6IlZpc2EgQ2hlY2tvdXQiLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0NSQnpzVTV6VW5aS2NnbUZoWURBWHF6WWttVGJORHpXcFNROFdEbE1yVks1cU5zdVd1eTJaYVhuRFwvV3d1OHc4NlwvMEhtMUUrZnRFdHN4MVMzcHVXeURZc24wSGtHc243TE1mMjJRbFlUYXBBelZLZk1meTA0K2Z0b256ZmE4XC9GOEN3b1Byd1dacExEVTNmSHVYM0JlUWlaSm5OUEpMQngyUDZRK1JcL2pMbk9McU5aTEpRcG41QWdJTmgyUE1WQVdGczQwUmo0YlZBS1wvWktUTG92dHJ2T1R2OXEzRHJiZkE0WWk4RkNlMjNrb2pqVFMrTDBVZXVROVVxYUZzRG9uNjlVUGxMQmdRQ2FlXC81bUxCanE1K1ZuUnA4ZzBSaDhGKzh1Yk50WXVWNUNSZzdlVnYyRW12S3J1XC9IYkMzTVhyNlFMazNaRSs5WjluN1p4b1MzS2FcL0t5WUVGMmV6clwvM3Z0TzBPdzF6NWVUR0NoWmJIN25uSUhycnAwb1lTcm0rc0F6dU5iemNvbTU3OFk1eWZIcyt4OTVPRk9pV2cyRWNyWWd2aGl5NkpXektEa2RraVBiVThWVWhpV1wvV0RPNGc1VVpVN1h6NWwxZEFhVVEwdTE4MVoyZXJaWUc4dW9oRkhhTGFDb1dBSjdxN0FMSkdoYUVSM1lvTWh5SXZ4RjVQREJIbytQSkw5ZlFpN0RCSlwvNHUwVk4zYTdKRzdDbDUxVkRuKzIrdTZtcDR5WUlEeWVsOEFHXC9kUVRFUXpJOGdvcXBWaG1oYnp0SVlidHV5MUdwMWJ6cG9oS2lua2F6ODVLa2VTakRhNHpyZ1dlRTROY1ZGWG9sVUJLQ01yOGxib3AyYkM5ZVwvYWQ1dklnQmJRbWNvU3V2U0k1dm5lWkhWcExMbWYyZng5dkJsdkJBcmgyeXVZNjBsQlFGdWp3eDlacVJLQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZYVjg2Vk12ZVZLTjZiRkJjMUFWaVdZK2E4eml4QVJlalVGRWVzd0RiaWp0ZGc4MG9pQTBpSzd5aXhRQk1tSnA4OGNzQ1drejk1S1NhT1E9IiwidHlwZSI6InZpc2FjaGVja291dCJ9LHsibmFtZSI6IlZWViBDYWRlYXVib24iLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0J1V25hUEVqelZFQjhcL05HTEZUMWkzWHJsREp6ck0rV05iXC9KbHY1dGI0cEpjdHl5UndiVXRIRStZbys3djlYUkFOazRER1R1dU1ZTDVCYmFxYnVVdnMyazJKYmdubFdIcnFxY2pBN2NFejdFV1JERW0ybTRqV25NaVwvS081YnVrMEJiUStLaVwvN1lOUHNTa3VDZ1VYR3JJWEFTVDVHUlB6SXdGWU9TN004MER6bHlLaThSN1RkSkF1OG5zbnBpaGt0TEJWT0hCcjlXck5STWUzUzdwNFBkOGEySEpHRFwvQ2FrSUw5dTdMWFlocVlxZ2ZreGZkdlFyUUZhejMxcDJ4VTlzXC9vM2tTV1hUXC9nbkNKejVNdVVocVhpdWRJOW1Ocm9TXC9BWWJVdVNaSUZGbnVlZ2QydDM1Qlc0ajhqenZnT1p5b1BSb2pxQ0dtQVlVUDZhQUhTaGU2WEIrN1BONmRBSWhKa0xYem5TcElLQzFCdHlVdUczSHlVT3dxRnlLdHQ2NkUxXC9JQ0pDbUFBZmlaa2JKQkZhU0lVRm54MUVNMGhZN01jYUhTMCtnZmIxZFF2QmhKUFwvZnlCRHBRQXg2U2FQMkpBRzl5aXZtemtIMytmTU5vUDZzeFZ5Q1g1RUhuYmxBc1hRRVd4bkpHWldXTHpCMjE4c294MjRqREhqMDFjN1pjQURoNGdvd0FKRFpZc3NwYVRnZGRoZU9SQ1cxMm92akFESkZRS0dNS0V0cGJGTlZaMlRRbCttd0JzczBjdktzcG0ya0dBUEtXWDBEakthMEhIdlluZXBFcUFId1Q2UWhlNlBYT1JIYktcLzNWY1hkZXpFSDh1eUM2VzlTc2pzRE82R1ZLcFdXSXRmT09mQ3FzXC9cLzNWaUFiazZwNzJzaGppRm40THU3K0IrSEJDYUFGQktxck0renZYYVZcL3RIM2VQXC9BRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlZSTFJ5VnQ4M2pJQmw3MWhNR0tjN0FxMEhOYmZJQVZGY1BDZWdJdDNqcWpMeVNsZmR4dVBcL3BsWnEzS0I0Zjd2QmRMSGRxUVwvM1dWenJvPSIsInR5cGUiOiJ2dnZjYWRlYXVib24ifSx7Im5hbWUiOiJXZWJzaG9wIEdpZnRjYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdCdzVnSVpZV0VoNlpkN1JBTTBSY3BRTmhuUFJ0VUFIQU5uMHRFYitGQ2d1V256RmZxUlY0dGhPYkg5b3lTVnlqWXAxdmJBTEFBSkdua1IrWGJtNEtMZlwva1d6eitNc01pZE1YQytGV3M2aHo4Y292VkF0elJJSXZFWGxSQkIxN2xMQ2VIOXlKbldhdTk2WHJtOWwreVpnazBFY2h2dFFvQm1ZZXFTYjRzUXFKWWtRZEZRVFRKSFBBZWE2SnJjektGY2hlVTg2czlRZVNiekt4VU96SVwvME9SdWxGT1FYRXNqazNFdm0yZlE1OUtMM29CdGNKRjFHUkpmY1dRSjd6WjNKUmhreUg5ZzErU2JiZmoxVVl0c3lsOGQrQ1REd0Z1cVdtWnlBMzliaUk1VllYQlc3OGlkNER1T1ZLZHp2XC9EdjR6V3kwZFhETTNWb2NlMG9aSVJ3UUJDNmxnNU4ybXc0UkdBaHA3SWNVTCs0RHBaY3JUT0s0K0VEMjRFbVdybHBUdXNVa0hOWFwvU2FWNkhzMzVQVEswNjVqWHRYbW4rK0d2RjVCekE0TlRBbitzaFRUSENzbDVzdjlyaG1td3gzKzNCQ3pJajBjTUFpRk1Uc1ZaMVR4MjMrTW5VWEZJcWtsalJseUQwN0ZuSVhJYktlSm9HdHg2dCtCOUVLSENxRXVKRG5LV0lFcytEbk1SUXpoaXVhT2g1blwvRzBmMDZRN0ZHNlBZQUtGR1RlXC90dytHU0tLNmo3MWRZR2dXeWNOelplSFcxc1NORlZSTDZwVVJiM1M5UkJNak9wZWRhM2ZVS0NoYklQcWhqcUYrd0tsNnE3WFF2bSt3NGRLWEh5aEdJNURZXC85VnNcL0RYNzR2UnhjVHR1dFpNaFRHeEk5SktteVlEUVRvRmh3RUtTeERYamRDOHRJdnNKRHU3TFE4dmUzbldBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZlFOcmhBTm81bFM4Mk8zS1N2cEhRdEZIelwvdzdYS0RzRytzWmhSc0JRWStOKzFDYzQ5ZTNkM3hlZWppVG9BTldMYmg5bGxzT3k0aFJVblRGVWVJPSIsInR5cGUiOiJ3ZWJzaG9wZ2lmdGNhcmQifSx7Im5hbWUiOiJXRSBGYXNoaW9uIEdpZnRjYXJkIiwicGF5bWVudE1ldGhvZERhdGEiOiJBYjAyYjRjMCFCUUFCQWdBaE1KSVE4elNaNkI2cVFzYlJ5b0x6TWtMYkpuSWNmSkhJTUxTN3RtYm4zZVJvWktUUldiZXk4UEl4b3lsdGFjbVVKa1U5SGt0enFyY2N6Zng3VVpkRW1TNVh1bXVrVDRObmx2VWVMUTZpQk5pVG0wV05xRHFnTDhQOFZ6cHUrNkdKc1Q0MW94clBXUVVuUklraDlaQmpxa3E2UStSVkhKd3NZVElkWnBLR2loYVpsSTN6TkJnd1NMczJMemxMbkFxTEFSQzVYOTNLdmZOQzlXaWZkYVBlbnRKUW1tSlV4MFU2cXUxVWo5YTZzSEI4R05OV0JSWlc3c1YzSGhTVVI2UVwvRlhZeFpYbXVmUmNxTTlyWXhJQ1wvSnU0RVYyYkorakxhb1BwWHU3UHRPWGlUMzlWR2FaMGFYMDJnZWh1U2dWUTRoancxaTdPNmtqY0tVbTZQWFhwMEpZRmVIMDJ5c0w2ZVVCdXppMFVMUDA5UFlnM0N5RnVrdmtlYytSbm1FUUJBY1dDUW16WjFvckhndENZWEN3bDQzbEk1YytOd080bWJOQzBGTDRmNVlcL1VnRHk3OVZGS1VkNWwzdzhMd0FFaW50NGgyMW5NTEtaWUNKeDFTMWVDWDVzaHp4K2NDU2Q1R0FxV1VBNzduWGtVU3dEQlhYUG1JcCtHS1FNa0s3SUZIZ0c5cVRKOXJGdmFkRjUyUHlFdjRic1djamVBeXo2K0NXT0ZCd2s1VHRFdlNLRGZLTEFxVTkrbWU5RGZUUDFRQlkrRkpZaUJyT0JXXC91Qmd2XC82TnVmemFEQldkczRqSk9WcG84UzAzXC95TkN2TTk0RFRKUElSZmliRXdHYW1NMnFyRVJwODZlMXdqcjBhbzhCXC9abGM3Wlg4UUR6cURtcFRDSFQ1MjhtYnVCRGtxN0E5bHdUSlZOa2YybGFlQnhjcUFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmZVloUDNFdWdMblwvRDE3Y1M4UU9xcEJJTVNVV0FvSmZXTjdyS200c1RRV2p0WFNzbzg1MjF4ZVF6VFRSM2o0TG00YjFKZVppTTNCdjQ2Z1ZjcTc5UHc9PSIsInR5cGUiOiJ3ZWZhc2hpb25naWZ0Y2FyZCJ9LHsibmFtZSI6Ildlc3Rlcm4gVW5pb24iLCJwYXltZW50TWV0aG9kRGF0YSI6IkFiMDJiNGMwIUJRQUJBZ0NDcUlIVmp2V0Zmb08xMjVHMFFpXC9hV25rUVZ6bVZWRENvK1hwSlhBQkZENEpFZ1N4c3EydHJMWUxxeGl4bXJKWEV5XC9lNVJTMVkwS0Qyb213YXZPYW5RME5XcWtvZXJiQ2xlK3QxU0FDM3JwTVlvZFNVaEJBUWx1WENTdk1SWE5GcnpGcHhlSzUrU3pwaHF6VHZndkx1TUNOM0t5eTRmQnpDalhlTUp3UUI1bzJEcmFHTXQ2dzE5M1wvXC9uRFwva1ZHR2V4T2hNZkZOaXRSeXBkMmcwSUxzMVMxTytyTE9oMlVZdkVLY3pMYkoreE9xdENja1NiRTd0XC9BMjh5K2Zvd0p4eXFiRFpGblwvRGkxcitiSzJRK0IrQ3ZBY3ZkeGJ5clJKZUpEUVN2WUk1NHJ6XC8ycWs2RHZ6TFMreUt1N3VabUJhRnNkOEdGMVZjMENKV1ZlTFoxQkZcL1NocXVVd1hXV0F3dGFLM3pZTXkzQzM3UUVKaXpUc09Qd1U4TGdRNXh2ekVuMlcwaDgrWXJXcWhBSG5MTFNmUXZcL1F5WWxZdVNhNk1ZY3AwQ2Z1QzVXeHIwWFFkSHREdGRURHgwaXh1Q3ZHK2JWOFRleTZwRUFCRlZERkx0UkhoV1dzRFNsRkppMzVFTWF3enQ5cUJROXJpMm1JQmplb1RaVm1ZTkhIUG9RU1U3bFR1cGFkY1FuUGF1T3kwZ1RjOThDaFhsRFFhWUl4Z1hqb1ZIb1F1bGFheWk1K0hETkZINkZnSkVsdGI3K3ZaMWNoVDgzS0RNMzJiaWdGdFFqb2IrdmI3dUFyU3FDMVFab2Z3QTRicm5CbWl0Q1R1RkZzV0VmOTN4OWt6cnU1Y0ZLblpaQ3U2TFllRkJxaWZwUkRuVE0rOE9jbUtqWFhVdjRPcHpVS3k2aHhET3lRSlordnpaTWE1ZUFTTmExSVNZQUVwN0ltdGxlU0k2SWtGR01FRkJRVEV3TTBOQk5UTTNSVUZGUkRnM1F6STBSRVExTXprd09VSTRNRUUzT0VFNU1qTkZNemd5TTBRMk9FUkJRME01TkVJNVJrWTRNekExUkVNaWZUcjFBcndWc2ZEczYrcDF2eTRoekZwaVFFTzFxWmxBbXIwaEpCS3ZndERHXC9vcm1IazFoeDVDb0Z2amdLSmpcL2c5T1JsbGdZQWthdnRxZz0iLCJ0eXBlIjoid2VzdGVybnVuaW9uIn0seyJuYW1lIjoiV2lua2VsIENoZXF1ZSIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQXVHVHI3SGIrc1M5V2hNYUpieE1KUWhYdjlrcENUcVdiYytScEVFY0RCYW0xc1dQenFyQVdleUVwcVBwNXQwVHM5NEUzelc3UlRKMEF5RXZoVlMrS3BHUUtuK0VJN2p0MGxpVmJEYXFGQUc4N3haZE5kdEZWWGxmQndNazRETFdncjFRT1lXMUFBQm9WY1ZWMStNcTJoTFwvOHN2MjlkaDlPUmtUZjhmRnY2QnVFR0ZvRWMrWXplN2s1Z0xYbkxyUmtpQlZoN1docFpSNlRYTVp2ZWJnQWpCUTI2VzBlclVTVGp6enM0YlZsNVpxc1VMcW1IbWpqOVpySStNWjJjNG9yWU1LOFNKWGIrcUtaNjk3TkdFYXpzeU1aWlJtT0c1TkJZek9FamRLOVwvU2RuYWJnUmdxeEFXaHkzblNRZnFOZ1ZBcnB2Zml2RmJ1cDE0eFwvWk1cL1AyUDZ4QkZ5TnlLMHY1UE4yazlmM2dGRVV0dk0wWXozemoycDlxQXc2NlU2K3VnMzh1M2x1aUl3TEhYRnY4TWc4N0VMZnR1T0p3cnVBWXVydkNxeXZEQlkwajNxZ0JiOGZhM0E2RVVMZlhVMzVWMGhWbzZyOVNIVzNlZnZzb2NkNnZqS1FvZ1pQMlRnZjRlKytrSUY4MW4xdzM5eFNQYVRhU0hObmM5SEV0RmNFTXJna21GbG03K01XQUlmMTR4V2krakRkUHRKdGJTa0ZFXC9sRHF4c3lFMTZheEorbkNaMjkxNEVpcGxyczZGbXFcL2YzVDBRWFFHWHNad1RYTXdaVjh1YkFhNXh2NVNvd29pMlpHVnpERlJocXhLM1BmZFFJVk55U1wvVTB6cURUSjhEY28rMERubFBmUytcL1MzZExIaXhKekpESmVnaDFcL2N5MTBWejhRVXJCenBSQk9Ld0Rua3RQOHBCeE5lTzBkVnIwbkFFcDdJbXRsZVNJNklrRkdNRUZCUVRFd00wTkJOVE0zUlVGRlJEZzNRekkwUkVRMU16a3dPVUk0TUVFM09FRTVNak5GTXpneU0wUTJPRVJCUTBNNU5FSTVSa1k0TXpBMVJFTWlmVFJGQkJkN0h0TU8zMGh2XC8xcWV5UlZDXC95U2VBWGRZTCsrMVA1V25nWUxpMjkzcDMydkxMMTl1YWtlT1lKYmgwYWNOcVZOUzl1RVJmaFE9IiwidHlwZSI6IndpbmtlbGNoZXF1ZSJ9LHsibmFtZSI6IllvdXIgR2lmdCIsInBheW1lbnRNZXRob2REYXRhIjoiQWIwMmI0YzAhQlFBQkFnQndTemtBWkZQNjJyZjlBOXMxZVRSNWVaZWx2QU1HZHA3NWV5eGsyXC8wNTRWUkVtYXhcL05YNmJnR1lnNmh2cFJ1RTc4QVRWMCs5akk0TGN3SEtDTXVYc1pXV3FqOVJvN2hkZGlNdWMxWkRPVm1DQWNoS1ZubFIzWDFSNEk4ZWI0VStwbFNZNUMzMVZxREJDK3RHQWRzUWptNDRZMGU5ZVwvVzRrRjZTVlU3VUl2aDhcL3RzOE1jc0ZNY0JOY1wvZ3ZRXC9mVFRTZ0x5amdoSmFEY1wvMUo5WkZrZ3RWZ0FvVFNxZ3ppeXRDd3g5SjVkVjJ1cldmQVgzc0lLeUk0dElNZ0g3QzJ6T3ZkRTJXNndvSmx4dU1DXC9iaHhVbXQ5ek05UlVXSlZ6a3dhVktwbzdSQ1F6cXVvU3BPM00ra29IYitrTExwMTFYRWs0TU1WN2pWYnFMWWw0ZE9TNWlQOWt6Y2NlMGh4K1NBRE5sRU54TDE0VzlFSEhPRGFRYWVTUHJ1ZUJHbGY0bDhHWk1ueTNJUXY5VXptU1NcL3hXdnE3bE9Qb3YxdUZ5SktYRkkyaklMUjJkR0E2RksxK0NTdXFsUlwvbmt5UWNRbzJYRnVmWWk5ZzJIYXRURmZkNE1Ya1VTSEY0XC9UcGRGQWQ4QXNoeWFiTGpoT21qYlhaRzF6dWtXVzNvOExvNlwvckVMT2xvRnBRcGRhZHNYYjBNNXZaVmtyektJSWpIb1krRXZHQjF1cm5iWk5LVXphaDJXKzJjaHFTQzY5SU50SWNHajFNN3IwVHQ4RWFNZzREVkFLTVhzTW5ZUkl3cDJoN2cxTmlXdk5jRWdFTlVDRHB1dVdFTmEwOXlBNHNpUFI5YVdjTG05bnVrV1wvVFQ0NmVyVEczVk1oS0YrK3RWcCtHRkJlRlRyODNYQkRQc0tMalhnajNYcEdrdmhIbG1ERktBRXA3SW10bGVTSTZJa0ZHTUVGQlFURXdNME5CTlRNM1JVRkZSRGczUXpJMFJFUTFNemt3T1VJNE1FRTNPRUU1TWpORk16Z3lNMFEyT0VSQlEwTTVORUk1UmtZNE16QTFSRU1pZmErblRZNHdibVRDR1Rzb091WUxUZk1HYVlNN0h5eXo3QVhzTFRqOTUxSVp2RE43ZG9OdUt3MlBkVFk5RWQxN2RUaWNrWjBBa3c9PSIsInR5cGUiOiJ5b3VyZ2lmdCJ9XSwicHVibGljS2V5IjoiMTAwMDF8QkRGMDNGMjE2REUzNThERDZBQjIxNEI3NEJGMEY4QkZEQ0RBOUYzRUVFMEIzNjlEQzVBREJDQkUwRkZBQjJBNEZBMUUzMUM0OTUxOUJDQkM3MjQxODI0RUU0NUY3QUNDNUIwNDEyMzQ0NkQxMDVCNzEzMTM1ODk3RjZDQkM4MkM0NzhERjNCMjZGQ0MwREVEREZFOEJEMkYyOURCQUYzNUFFNjZFQ0U2QUZFNDhDOTg1QTA4NTkxQ0RDNTdFQTJCMzVGMjU1MUNERUVGRDNBQ0ZCOTEyRTA1MzBCNDAyNTQ5Mzk5QzkzQzJDMjNDRjc0QzQ0NDUxNUZDNkE2RTVEMjY3QTRBMkU1MUNBOTdGMzA0NjA4RkI1NjRERTcwRTFENjgzQ0JEQUZEN0U4NjkxMjNDOTE5NjIzODBEMzhBRjc0MDAzM0Q1MkRDMjUyM0RBODBDRTcyMDk3RDJFRDdEMUNBRTMzQjYwQzkxQUMyRjYzMDc3OTU4MDhEMkQzNTFGRDExMkMyODNFMDQzRjFCMjY2QzJDMzQ3REVFMzFFRThENjA2RDUxMjQzMUJDNUM5QzAxMDk5QTk2NzUzMkVGQTA2Njk4RjEzMEFGNTAwNUVDRTBDRUUzRkZBQzI0ODg0RTJDN0Y2RkNENDg2NjZENjRENDAwNTZDQ0JFNjI1NzkiLCJzZGtWZXJzaW9uIjoiMS4zLjAifQ== post-payments-applepay: summary: Make an Apple Pay payment value: amount: currency: USD value: 1000 reference: Your order number paymentMethod: type: applepay applePayToken: VNRWtuNlNEWkRCSm1xWndjMDFFbktkQU... returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-card-3d-secure-direct: summary: Make a card payment with 3D Secure redirect authentication value: amount: currency: USD value: 1000 reference: Your order number paymentMethod: type: scheme number: '4212345678901237' expiryMonth: '03' expiryYear: '2030' holderName: John Smith cvc: '737' browserInfo: userAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9) Gecko/2008052912 Firefox/3.0 acceptHeader: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-card-3d-secure-direct-200: summary: Successful card payment with 3D Secure redirect authentication value: additionalData: cvcResult: 1 Matches authCode: '074516' avsResult: 4 AVS not supported for this card type avsResultRaw: '4' cvcResultRaw: M refusalReasonRaw: AUTHORISED acquirerCode: TestPmmAcquirer acquirerReference: 8PQMP9SJ7DN pspReference: 993617894903480A resultCode: Authorised post-payments-card-3d-secure-securedfields: summary: Make a payment with 3D Secure 2 native authentication, using encrypted card details value: amount: currency: USD value: 1000 reference: Your order number paymentMethod: type: scheme encryptedCardNumber: test_4212345678901237 encryptedExpiryMonth: test_03 encryptedExpiryYear: test_2030 encryptedSecurityCode: test_737 holderName: John Smith returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-card-3d-secure-securedfields-200: summary: Successful payment with 3D Secure 2 native authentication, using encrypted card details value: additionalData: cvcResult: 1 Matches authCode: 083996 avsResult: 4 AVS not supported for this card type avsResultRaw: '4' cvcResultRaw: M refusalReasonRaw: AUTHORISED acquirerCode: TestPmmAcquirer acquirerReference: 8PQMP9SJH66 pspReference: 993617894905481G resultCode: Authorised post-payments-card-direct: summary: Make a card payment value: amount: currency: USD value: 1000 reference: Your order number paymentMethod: type: scheme number: '4111111111111111' expiryMonth: '03' expiryYear: '2030' holderName: John Smith cvc: '737' returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-card-direct-200: summary: Successful card payment value: additionalData: cvcResult: 1 Matches authCode: '036240' avsResult: 4 AVS not supported for this card type avsResultRaw: '4' cvcResultRaw: M refusalReasonRaw: AUTHORISED acquirerCode: TestPmmAcquirer acquirerReference: 8PQMP9SJQUL pspReference: 993617894906488A resultCode: Authorised post-payments-card-securedfields: summary: Make a card payment using encrypted card details value: amount: currency: USD value: 1000 reference: Your order number paymentMethod: type: scheme encryptedCardNumber: test_4111111111111111 encryptedExpiryMonth: test_03 encryptedExpiryYear: test_2030 encryptedSecurityCode: test_737 returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-card-securedfields-200: summary: Successful card payment using encrypted card details value: additionalData: cvcResult: 1 Matches authCode: 064649 avsResult: 4 AVS not supported for this card type avsResultRaw: '4' cvcResultRaw: M refusalReasonRaw: AUTHORISED acquirerCode: TestPmmAcquirer acquirerReference: 8PQMP9SM92L pspReference: 993617894914488A resultCode: Authorised post-payments-details-3d-secure: summary: Submit details for the 3D Secure payment description: Example request when submitting a 3D Secure payment value: paymentData: Hee57361f99.... details: MD: Ab02b4c0!BQABAgCW5sxB4e/==... PaRes: eNrNV0mTo7gS... post-payments-details-3d-secure-200: summary: Payment authorised description: Example response when submitting a 3D Secure result value: resultCode: Authorised pspReference: V4HZ4RBFJGXXGN82 post-payments-oneclick-direct: summary: Make a one-off payment with a token and CVV value: amount: currency: USD value: 1000 reference: Your order number paymentMethod: type: scheme recurringDetailReference: '8416038790273850' cvc: '737' shopperReference: YOUR_UNIQUE_SHOPPER_ID_6738oneoff returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-oneclick-securedfields: summary: Make a one-off payment with a token and CVV, using encrypted card details value: amount: currency: USD value: 1000 reference: Your order number paymentMethod: type: scheme recurringDetailReference: '8416038790273850' encryptedSecurityCode: adyenjs_0_1_18$MT6ppy0FAMVMLH... shopperReference: YOUR_UNIQUE_SHOPPER_ID_6738oneoff returnUrl: https://your-company.com/... merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-paymentPspReference-amountUpdates-amount-update: summary: Update the amount of an authorised payment description: Example request to update the amount of a payment value: merchantAccount: YOUR_MERCHANT_ACCOUNT amount: currency: EUR value: 2500 reference: YOUR_UNIQUE_REFERENCE post-payments-paymentPspReference-amountUpdates-amount-update-201: summary: Amount update requested description: Example response when an amount update was requested value: merchantAccount: YOUR_MERCHANT_ACCOUNT paymentPspReference: 993617894903480A reference: YOUR_UNIQUE_REFERENCE pspReference: 993617894906488A status: received amount: currency: EUR value: 2500 post-payments-paymentPspReference-cancels-cancel-with-psp-reference: summary: Cancel payment using a PSP reference description: Example cancel request with a PSP reference value: reference: YOUR_UNIQUE_REFERENCE merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-paymentPspReference-cancels-cancel-with-psp-reference-201: summary: Refund requested description: Example response when a refund was requested value: merchantAccount: YOUR_MERCHANT_ACCOUNT paymentPspReference: 993617894903480A reference: YOUR_UNIQUE_REFERENCE pspReference: 993617894906488A status: received post-payments-paymentPspReference-captures-capture: summary: Capture an authorised payment description: Example capture request value: reference: YOUR_UNIQUE_REFERENCE merchantAccount: YOUR_MERCHANT_ACCOUNT amount: value: 2000 currency: EUR post-payments-paymentPspReference-captures-capture-201: summary: Capture requested description: Example response when a capture was requested value: merchantAccount: YOUR_MERCHANT_ACCOUNT paymentPspReference: 993617894903480A reference: YOUR_UNIQUE_REFERENCE pspReference: 993617894906488A status: received amount: value: 2000 currency: EUR post-payments-paymentPspReference-refunds-refund: summary: Refund a payment description: Example refund request value: amount: currency: EUR value: 2500 reference: YOUR_UNIQUE_REFERENCE merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-paymentPspReference-refunds-refund-201: summary: Refund requested description: Example response when a refund was requested value: merchantAccount: YOUR_MERCHANT_ACCOUNT paymentPspReference: 993617894903480A reference: YOUR_UNIQUE_REFERENCE pspReference: 993617894906488A status: received amount: currency: EUR value: 2500 post-payments-paymentPspReference-reversals-reversal: summary: Reverse (cancel or refund) a payment description: Example request to reverse a payment value: reference: YOUR_UNIQUE_REFERENCE merchantAccount: YOUR_MERCHANT_ACCOUNT post-payments-paymentPspReference-reversals-reversal-201: summary: Payment reversal requested description: Example response when a payment reversal was requested value: merchantAccount: YOUR_MERCHANT_ACCOUNT paymentPspReference: 993617894903480A reference: YOUR_UNIQUE_REFERENCE pspReference: 993617894906488A status: received post-payments-result-basic: summary: Verify payment results value: payload: VALUE_YOU_GET_FROM_CHECKOUT_SDK post-payments-result-basic-200: summary: Payment authorised value: authResponse: Authorised pspReference: V4HZ4RBFJGXXGN82 merchantReference: Your order number shopperLocale: nl_NL paymentMethod: ideal post-payments-split-balanceplatform: summary: Split a payment between balance accounts value: paymentMethod: type: scheme number: '4111111111111111' cvc: '737' expiryMonth: '03' expiryYear: '2030' holderName: John Smith amount: value: 40000 currency: USD reference: YOUR_ORDER_NUMBER merchantAccount: YOUR_MERCHANT_ACCOUNT returnUrl: https://your-company.com/... splits: - amount: value: 39600 type: BalanceAccount account: BA00000000000000000000001 reference: Your reference for the sale amount description: Your description for the sale amount - amount: value: 400 type: Commission reference: Your reference for the commission description: Your description for the commission - type: PaymentFee account: BA00000000000000000000001 reference: Your reference for the fees description: Your description for the fees post-payments-split-balanceplatform-200: summary: Payment split between balance accounts value: additionalData: refusalReasonRaw: AUTHORISED eci: N/A acquirerAccountCode: YOUR_ACQUIRER_ACCOUNT donationToken: 81234567890123456... xid: N/A threeDAuthenticated: 'false' paymentMethodVariant: visa issuerBin: '41111111' payoutEligible: Y fraudManualReview: 'false' threeDOffered: 'false' threeDOfferedResponse: N/A authorisationMid: '50' fundsAvailability: I authorisedAmountCurrency: USD threeDAuthenticatedResponse: N/A avsResultRaw: '5' retry.attempt1.rawResponse: AUTHORISED paymentMethod: visa avsResult: 5 No AVS data provided cardSummary: '1111' retry.attempt1.avsResultRaw: '5' networkTxReference: '777718270854480' expiryDate: 3/2030 cavvAlgorithm: N/A cardBin: '411111' alias: '8915844059375211' cvcResultRaw: M merchantReference: YOUR_ORDER_NUMBER acquirerReference: YOUR_ACQUIRER_REFERENCE cardIssuingCountry: NL liabilityShift: 'false' fraudResultType: GREEN authCode: '035450' cardHolderName: John Smith isCardCommercial: unknown PaymentAccountReference: 6006491286999921374... retry.attempt1.acquirerAccount: YOUR_ACQUIRER_ACCOUNT cardIssuingBank: ISSUING_BANK_CUSTOMER retry.attempt1.acquirer: YOUR_ACQUIRER_CODE authorisedAmountValue: '40000' issuerCountry: NL cvcResult: 1 Matches retry.attempt1.responseCode: Approved aliasType: Default retry.attempt1.shopperInteraction: Ecommerce cardPaymentMethod: visa acquirerCode: YOUR_ACQUIRER_CODE pspReference: PPKFQ89R6QRXGN82 resultCode: Authorised post-payments-split-classic: summary: Split a payment in a Classic Platforms integration value: paymentMethod: type: scheme number: '4111111111111111' cvc: '737' expiryMonth: '03' expiryYear: '2030' holderName: John Smith amount: value: 6200 currency: EUR reference: YOUR_ORDER_NUMBER merchantAccount: YOUR_MERCHANT_ACCOUNT returnUrl: https://your-company.com/... splits: - amount: value: 6000 type: MarketPlace account: '151272963' reference: '6124145' description: 'Porcelain Doll: Eliza (20cm)' - amount: value: 200 type: Commission reference: '6124146'