{"openapi":"3.0.0","info":{"description":"","title":"Payment Request","version":"2.2.12","x-api-id":"755eb72d-959e-4c16-9af7-5d3005b88788","x-audience":"business-unit-internal","x-ibm-name":"payment-request"},"servers":[{"url":"https://api.rabobank.nl/openapi/payments","description":"Production server"},{"url":"https://api-sandbox.rabobank.nl/openapi/sandbox/payments","description":"Sandbox server"}],"paths":{"/payment-requests":{"get":{"parameters":[{"description":"Optional filter on the completion status of the payment request, possible values: ALL, INCOMPLETE (=unpaid), COMPLETE (=paid).","example":"ALL","in":"query","name":"completionStatus","required":false,"schema":{"enum":["ALL","INCOMPLETE","COMPLETE"],"type":"string"}},{"description":"Maximum number of payments requests to return.","example":25,"in":"query","name":"limit","required":false,"schema":{"exclusiveMaximum":false,"exclusiveMinimum":false,"format":"int32","maximum":100,"minimum":1,"type":"integer"}},{"description":"Number of payment requests to skip for pagination.","example":0,"in":"query","name":"offset","required":false,"schema":{"format":"int32","type":"integer"}},{"description":"This is the unique ID of Initiating Party for the request","example":"95126d8f-ae9d-4ac3-ac9e-c357dcd78811","in":"header","name":"x-request-id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetPaymentRequestsResponse"}}},"description":"Successfully retrieved GetPaymentRequestsResponse"},"403":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"NOCONSENTSPECIFIED_ERROR","errorMessage":"No consent specified"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Invalid consent information specified"},"500":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"TECHNICAL_ERROR","errorMessage":"Unexpected exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Retrieving GetPaymentRequestsResponse failed due to some server error"}},"tags":["payment-request-service"],"deprecated":false,"description":"Returns a list of payment requests for the user that is logged in","operationId":"getPaymentRequests","summary":"List of payment requests"},"post":{"parameters":[{"description":"Standard https header element with date, time and timezone.","example":"Tue, 26 Okt 2021 08:12:31 GMT","in":"header","name":"date","required":true,"schema":{"type":"string"}},{"description":"The digest is a base64 encoded hash of the body (SHA-512 or SHA-256 is allowed).","example":"sha-512=ttXH7VYT0BBoIFTsSrSkTMhKMbuBuC8ZaR3rZBSxwd1leleIsA4uLyfB0rHWUzALHUxA71iy6T2N7dAcGr08Gw==","in":"header","name":"digest","required":true,"schema":{"type":"string"}},{"description":"Signature is made up of the headers - date, digest and x-request-id. For more information see additional documentation in portal.","example":"keyId=\"1523433508\",algorithm=\"rsa-sha512\",headers=\"date digest x-request-id\",signature=\"0VOn8X/hNqt240+675ediIvcDNpiYEPXxQQ/d49NT6Zy3FPwCblhTN+0LVtaALVd8AR1/BYBHJjjxxm8QfDi5AWyZL0xWnPuqoASZrbIgPg8X/OxVTyEWfAX6DvVDZfOFEolwWmhkj/ngUEV47vQAvRQd00FhrUGm93W9LFU8ochn/8IfdQY51ZIjCnqW5/oL/mHRrjQ8V51UvDjbH5nYPeivvYvq2JOPaWw8mzSglVFa2c2FbKaakKGi+TfbI4CYNjMrkKBvuhFxmWtSXaYcz81KQre3BXMNKXwHVaYuIGm7x2TE0E07DqbrBGu9qetGuCQBsKLgUvKtEj4p/o01Q==\"","in":"header","name":"signature","required":true,"schema":{"type":"string"}},{"description":"Public certificate of the Initiating Party that corresponds with the signature made by the Initiating Party.","example":"MIIDkDCCAnigAwIBAgIEWs3AJDANBgkqhkiG9w0BAQsFADCBiTELMAkGA1UEBhMCTkwxEDAOBgNVBAgMB1V0cmVjaHQxEDAOBgNVBAcMB1V0cmVjaHQxETAPBgNVBAoMCFJhYm9iYW5rMRwwGgYDVQQLDBNPbmxpbmUgVHJhbnNhY3Rpb25zMSUwIwYDVQQDDBxQU0QyIEFQSSBQSSBTZXJ2aWNlcyBTYW5kYm94MB4XDTE4MDQxMTA3NTgyOFoXDTIzMDQxMTA3NTgyOFowgYkxCzAJBgNVBAYTAk5MMRAwDgYDVQQIDAdVdHJlY2h0MRAwDgYDVQQHDAdVdHJlY2h0MREwDwYDVQQKDAhSYWJvYmFuazEcMBoGA1UECwwTT25saW5lIFRyYW5zYWN0aW9uczElMCMGA1UEAwwcUFNEMiBBUEkgUEkgU2VydmljZXMgU2FuZGJveDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANoAjqGWUgCIm2F+0sBSEwLal+T3u+uldLikpxHCB8iL1GD7FrRjcA+MVsxhvHly7vRsHK+tQyMSaeK782RHpY33qxPLc8LmoQLb2EuiQxXj9POYkYBQ74qkrZnvKVlR3WoyQWeDOXnSY2wbNFfkP8ET4ElwyuIIEriwYhab0OIrnnrO8X82/SPZxHwEd3aQjQ6uhiw8paDspJbS5WjEfuwY16KVVUYlhbtAwGjvc6aK0NBm+LH9fMLpAE6gfGZNy0gzMDorVNbkQK1IoAGD8p9ZHdB0F3FwkILEjUiQW6nK+/fKDNJ0TBbpgZUpY8bR460qzxKdeZ1yPDqX2Cjh6fkCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAYL4iD6noMJAt63kDED4RB2mII/lssvHhcxuDpOm3Ims9urubFWEpvV5TgIBAxy9PBinOdjhO1kGJJnYi7F1jv1qnZwTV1JhYbvxv3+vk0jaiu7Ew7G3ASlzruXyMhN6t6jk9MpaWGl5Uw1T+gNRUcWQRR44g3ahQRIS/UHkaV+vcpOa8j186/1X0ULHfbcVQk4LMmJeXqNs8sBAUdKU/c6ssvj8jfJ4SfrurcBhY5UBTOdQOXTPY85aU3iFloerx7Oi9EHewxInOrU5XzqqTz2AQPXezexVeAQxP27lzqCmYC7CFiam6QBr06VebkmnPLfs76n8CDc1cwE6gUl0rMA==","in":"header","name":"signature-certificate","required":true,"schema":{"type":"string"}},{"description":"This is the unique ID of Initiating Party for the request","example":"95126d8f-ae9d-4ac3-ac9e-c357dcd78811","in":"header","name":"x-request-id","required":true,"schema":{"type":"string"}}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentCreatedResponse"}}},"description":"Successfully created a PaymentRequest"},"400":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"VALIDATION_ERROR","errorMessage":"Validation exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Validation exception"},"403":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"SIGNATURE_VALIDATION_ERROR","errorMessage":"Signature validation failed"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Consent, Certificate or Signature validation failed"},"500":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"TECHNICAL_ERROR","errorMessage":"Unexpected exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Initiating payment request failed due to some server error"}},"tags":["payment-request-service"],"deprecated":false,"description":"Creates a new payment request","operationId":"initiatePaymentRequest","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentRequestCreateRequest"}}},"description":"Parameters for the payment request to create. The iban, currency  and description are required. The amount can be required or optional  based on the value of the hasVariableAmount parameter, see  Introduction section for more information. The numPayers field must be  set to 1 and the clientReference field can be optionally provided. The redirectUrl field can be optional and should be used with caution,  see Introduction section for more information. For header parameters please refer to document section."},"summary":"Initiate payment request"}},"/payment-requests/accounts":{"get":{"parameters":[{"description":"This is the unique ID of Initiating Party for the request","example":"95126d8f-ae9d-4ac3-ac9e-c357dcd78811","in":"header","name":"x-request-id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"example":[{"currency":"EUR","iban":"NL19RABO0123456790","segment":"BUSINESS"}],"items":{"$ref":"#/components/schemas/PaymentRequestAccount"},"type":"array"}}},"description":"Successfully returned a list of accounts"},"403":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"NOCONSENTSPECIFIED_ERROR","errorMessage":"No consent specified"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"If the consent information is invalid"},"500":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"TECHNICAL_ERROR","errorMessage":"Unexpected exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Looking up the list of accounts failed due to some server error"}},"tags":["payment-request-service"],"deprecated":false,"description":"Returns a list of accounts that the current user can create payment requests for","operationId":"getAccounts","summary":"Read account list for payment requests"}},"/payment-requests/{id}":{"delete":{"parameters":[{"description":"This is the internal id of the particular Payment Request and present in the response of the POST or GET /payment-requests call.","example":"2f280203-fb0f-43db-ac3b-3211d3b98f22","in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"description":"This is the unique ID of Initiating Party for the request","example":"95126d8f-ae9d-4ac3-ac9e-c357dcd78811","in":"header","name":"x-request-id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Successfully deleted PaymentRequest"},"401":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"VALIDATION_ERROR","errorMessage":"Validation exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Missing PathVariable id"},"403":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"NOCONSENTSPECIFIED_ERROR","errorMessage":"No consent specified"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"If the consent information is invalid or the user has not given consent for the account of the payment request"},"404":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"NOTFOUND_ERROR","errorMessage":"PaymentRequest cannot be found"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"If PaymentRequest cannot be found in database or belongs to another user"},"500":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"TECHNICAL_ERROR","errorMessage":"Unexpected exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Deleting PaymentRequest failed due to some server error"}},"tags":["payment-request-service"],"deprecated":false,"description":"Deletes a single payment request for the current user","operationId":"deletePaymentRequest","summary":"Delete payment request"},"get":{"parameters":[{"description":"This is the internal id of the particular Payment Request and present in the response of the POST or GET /payment-requests call.","example":"2f280203-fb0f-43db-ac3b-3211d3b98f22","in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"description":"This is the unique ID of Initiating Party for the request","example":"95126d8f-ae9d-4ac3-ac9e-c357dcd78811","in":"header","name":"x-request-id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetPaymentRequestResponse"}}},"description":"Successfully retrieved GetPaymentRequestResponse"},"403":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"NOCONSENTSPECIFIED_ERROR","errorMessage":"No consent specified"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Invalid consent information specified"},"500":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"TECHNICAL_ERROR","errorMessage":"Unexpected exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Retrieving GetPaymentRequestResponse failed due to some server error"}},"tags":["payment-request-service"],"deprecated":false,"description":"Returns a payment request using provided Id for the user that is logged in","operationId":"getPaymentRequest","summary":"Details of a payment request by id"}},"/payment-requests/{id}/qr-codes":{"get":{"parameters":[{"description":"This is the internal id of the particular Payment Request and present in the response of the POST or GET /payment-requests call.","example":"2f280203-fb0f-43db-ac3b-3211d3b98f22","in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"description":"This is the unique ID of Initiating Party for the request","example":"95126d8f-ae9d-4ac3-ac9e-c357dcd78811","in":"header","name":"x-request-id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successfully generated QR code for payment request"},"401":{"content":{"image/png, application/json":{"examples":{"response":{"value":{"errorCode":"VALIDATION_ERROR","errorMessage":"Validation exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Missing PathVariable id"},"403":{"content":{"image/png, application/json":{"examples":{"response":{"value":{"errorCode":"NOCONSENTSPECIFIED_ERROR","errorMessage":"No consent specified"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"If the consent information is invalid or the user has not given consent for the account of the payment request"},"404":{"content":{"image/png, application/json":{"examples":{"response":{"value":{"errorCode":"NOTFOUND_ERROR","errorMessage":"PaymentRequest cannot be found"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"If PaymentRequest cannot be found in database or belongs to another  user"},"500":{"content":{"image/png, application/json":{"examples":{"response":{"value":{"errorCode":"TECHNICAL_ERROR","errorMessage":"Unexpected exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Generating QR Code failed due to some server error"}},"tags":["payment-request-service"],"deprecated":false,"description":"Generates a QR code for the given payment request","operationId":"generateQRCode","summary":"Generate QR code for payment request"}},"/payment-requests/{id}/transactions/{transactionId}":{"get":{"parameters":[{"description":"This is the internal id of the particular Payment Request and present in the response of the POST or GET /payment-requests call.","example":"2f280203-fb0f-43db-ac3b-3211d3b98f22","in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"description":"This is the internal id of the particular Payment Request Transaction and present in the response of the GET /payment-requests call.","example":"b6248d63-0aad-4d68-9a4c-c925efeeb4a1","in":"path","name":"transactionId","required":true,"schema":{"format":"uuid","type":"string"}},{"description":"This is the unique ID of Initiating Party for the request","example":"95126d8f-ae9d-4ac3-ac9e-c357dcd78811","in":"header","name":"x-request-id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PRTransactionStatusResponse"}}},"description":"Successfully retrieved PRTransactionStatusResponse"},"404":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"NOTFOUND_ERROR","errorMessage":"Payment Request not found exception occurred or Transaction not found exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"If PaymentRequest or Transaction cannot be found in database"},"500":{"content":{"application/json":{"examples":{"response":{"value":{"errorCode":"TECHNICAL_ERROR","errorMessage":"Unexpected exception occurred"}}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Retrieving PRTransactionStatusResponse failed due to some server error"}},"tags":["payment-request-service"],"deprecated":false,"description":"Returns a transaction status of payment request using payment request Id and transaction Id","operationId":"getTransactionStatus","summary":"Get Transaction Status for Payment Request"}}},"components":{"schemas":{"Error":{"properties":{"errorCode":{"enum":["TECHNICAL_ERROR","VALIDATION_ERROR","NOTFOUND_ERROR","NOCONSENTSPECIFIED_ERROR","CONSENTNOTVALIDFORACCOUNT_ERROR","CERTIFICATE_VALIDATION_ERROR","SIGNATURE_VALIDATION_ERROR"],"type":"string","xml":{"attribute":false,"name":"errorCode","wrapped":false}},"errorMessage":{"description":"the error message","example":"Unkown error","type":"string","xml":{"attribute":false,"name":"errorMessage","wrapped":false}}},"title":"Error","type":"object"},"GetPaymentRequestResponse":{"properties":{"currentDateTime":{"description":"current datetime","example":"2018-09-17T15:43:51.459Z","format":"date-time","type":"string"},"paymentRequestWithMetadata":{"$ref":"#/components/schemas/PaymentRequestWithMetadata"}},"title":"GetPaymentRequestResponse","type":"object"},"GetPaymentRequestsResponse":{"properties":{"currentDateTime":{"description":"current datetime","example":"2018-09-17T15:43:51.459Z","format":"date-time","type":"string"},"paymentRequests":{"items":{"$ref":"#/components/schemas/PaymentRequestWithMetadata"},"type":"array"}},"title":"GetPaymentRequestsResponse","type":"object"},"PRTransactionStatusResponse":{"properties":{"accountHolderName":{"description":"account holder name","example":"Requester Name","type":"string"},"isBusiness":{"description":"is business","example":true,"type":"boolean"},"paymentRequestId":{"description":"payment request id base 64 encoded","example":"/hKVA0FBT26WfVvbWx/WMA==","type":"string"},"status":{"description":"status","example":"SUCCESS","type":"string"},"transactionId":{"description":"transaction id","example":"fe129503-4141-4f6e-967d-5bdb5b1fd630","format":"uuid","type":"string"}},"title":"PRTransactionStatusResponse","type":"object"},"PaymentCreatedResponse":{"description":"response of initiating payment","properties":{"assignedId":{"description":"assignedId","example":"fe129503-4141-4f6e-967d-5bdb5b1fd630","type":"string"},"paymentPageUrl":{"description":"the url to pay the request","example":"https://fake.nl/fakebetaalverzoek/?id=baVGVJPZRg2nNc8-WlLzSw","type":"string"}},"title":"PaymentCreatedResponse","type":"object"},"PaymentRequest":{"properties":{"accountIban":{"description":"iban of the requester","example":"NL19RABO0123456790","type":"string"},"accountName":{"description":"name of the requester","example":"The Requester","type":"string"},"accountSegment":{"description":"The segment of the request","enum":["RETAIL","BUSINESS"],"example":"BUSINESS","type":"string"},"amountCents":{"description":"payed amount in cents","example":10000,"format":"int32","type":"integer"},"clientReference":{"description":"If this was a BUSINESS request the clientReference can be filled in","example":"TEST ref","type":"string"},"created":{"description":"datetime of creation","example":"2018-09-17T15:43:51.459Z","format":"date-time","type":"string"},"currency":{"description":"currency, only EUR","example":"EUR","type":"string"},"description":{"description":"Description","example":"Can you please pay me for the present","type":"string"},"expired":{"type":"boolean"},"hasVariableAmount":{"description":"If variable amount is true the payer can determine the amount to be payed","example":false,"type":"boolean"},"id":{"description":"request Id","example":"fe129503-4141-4f6e-967d-5bdb5b1fd630","format":"uuid","type":"string"},"numPayers":{"description":"Number of payers","example":1,"format":"int32","type":"integer"},"transactions":{"items":{"$ref":"#/components/schemas/PaymentRequestTransaction"},"type":"array"}},"title":"PaymentRequest","type":"object"},"PaymentRequestAccount":{"description":"request to check if a consent is given for the account","properties":{"currency":{"description":"currency","example":"EUR","type":"string"},"iban":{"description":"iban for which the request is done","example":"NL19RABO0123456790","type":"string"},"segment":{"description":"account segment","enum":["RETAIL","BUSINESS"],"example":"BUSINESS","type":"string"}},"title":"PaymentRequestAccount","type":"object"},"PaymentRequestCreateRequest":{"description":"prequest for initiating payment","properties":{"amountCents":{"description":"Amount in cents. Cannot be 0 (between 1 to 500000)","example":10000,"format":"int32","type":"integer"},"clientReference":{"description":"ClientReference can only contain swift characters with a max of 50, ^[a-zA-Z0-9 .,/?()+'-]*$  // Client reference only allowed to be set for business payment request","example":"Client-Reference","type":"string"},"currency":{"description":"currency, only EUR","example":"EUR","type":"string"},"description":{"description":"Description can only contain swift characters with a max of 35, ^[a-zA-Z0-9 .,/?()+'-]*$","example":"Mchi Restaurant","type":"string"},"hasVariableAmount":{"description":"If variable amount is true the payer can determine the amount to be payed","example":false,"type":"boolean"},"iban":{"description":"iban for which the request is done","example":"NL19RABO0123456790","type":"string"},"numPayers":{"description":"Number of expected payers. Should be 1 for business","example":1,"format":"int32","type":"integer"},"redirectUrl":{"description":"RedirectUrl is the url to which the payer will be redirected after payment to see the transaction status.","example":"https://www.merchant-site.nl/redirect","type":"string"}},"required":["amountCents","currency","description","iban"],"title":"PaymentRequestCreateRequest","type":"object"},"PaymentRequestTransaction":{"properties":{"accountIban":{"description":"iban of the payer","example":"NL00RABO0000000000","type":"string"},"accountName":{"description":"name of the payer","example":"The Payer","type":"string"},"amountCents":{"description":"amount in cents","example":10000,"format":"int32","type":"integer"},"chosenAmountCents":{"description":"the chosen amount in cents","example":500,"format":"int32","type":"integer"},"id":{"description":"transaction Id","example":"800b42aa-9a8d-4e5e-a955-bda223e1e80f","format":"uuid","type":"string"},"tsPaid":{"description":"datetime when it was paid","example":"2018-09-17T15:43:51.459Z","format":"date-time","type":"string"}},"title":"PaymentRequestTransaction","type":"object"},"PaymentRequestWithMetadata":{"properties":{"paymentPageUrl":{"example":"https://fake.nl/fakebetaalverzoek/?id=_hKVA0FBT26WfVvbWx_WMA","type":"string"},"paymentRequest":{"$ref":"#/components/schemas/PaymentRequest"}},"title":"PaymentRequestWithMetadata","type":"object"}},"securitySchemes":{"clientId":{"description":"ClientId as provided by the Rabobank developer portal.","in":"header","name":"X-IBM-Client-Id","type":"apiKey"},"oauth2_premium_access_code_flow_payment-request":{"description":"NOTE Please use the Authorization and Token URL as provided by the oAuth2 Services. Scope: prs.paymentrequest.read-write","flows":{"authorizationCode":{"authorizationUrl":"https://oauth.rabobank.nl/openapi/oauth2-premium/authorize","scopes":{"prs.paymentrequest.read-write":"Consent for payment request"},"tokenUrl":"https://oauth.rabobank.nl/openapi/oauth2-premium/token"}},"type":"oauth2","x-ibm-oauth-provider":"access-authorization-1-0-0-8e24"}}},"security":[{"clientId":[],"oauth2_premium_access_code_flow_payment-request":["prs.paymentrequest.read-write"]}],"tags":[{"description":"Payment request public endpoints","name":"payment-request-service"}],"x-readme":{"explorer-enabled":false,"proxy-enabled":false}}