OP Request to Pay API (0.1.0)

Download OpenAPI specification:Download

Support: api@op.fi

DEPRECATED FROM 06/2023

The OP Request to Pay API allows businesses to experiment with a different way to collect payments that is based on requesting payments instead of sending an invoice. The API focuses on the billing process. It always returns a verification of successful payment. Our goal is to help billers to discover potential use cases and identify possible blockers in payment collection processes.

OP Request to Pay API flow:

  • Biller sends a payment request to OP Request to Pay API with the following information:
  • Payee's details (name, address, phone number)
  • Biller's details (name, address, account number)
  • Payment's details (amount, reference, or message)
  • Biller sends a status inquiry to OP Request to Pay API regarding the payment.
  • Biller receives a verification from OP Request to Pay API that the payment was completed.

Sandbox

Testing OP Request to Pay API in the sandbox is free of charge. Start by creating a new application.

Production access

We are not currently planning production use with OP Request to Pay API. We look forward to getting feedback on how Request to Pay would fit into your payment collection process.

Create and send a new Request to Pay

Creates a new Request to Pay and sends it to the payee

Authorizations:
ApiKeyAuth
Request Body schema: application/json
required

Details of the payment request resource

required
object (Debtor)

The debtor for the transfer.

required
object (Creditor)

Creditor for the transfer.

required
object (InstructedAmount)

Monetary amount in the given currency.

instructionId
required
string [ 1 .. 35 ] characters

Unique identification code given to the payment by the initiating party. It is used for referring to the payment between the payment initiator and the debtor's bank. Relevant data only for SEPA instant credit transfers (SCT INST).

endToEndId
required
string [ 1 .. 35 ] characters

Unique identifier for the transaction, assigned by the initiating party. This identifier (debtor's reference) is passed on, unchanged, throughout the entire end-to-end chain. Relevant data only for all SEPA payments and mandatory for MT101 foreign payments.

reference
required
string [ 1 .. 25 ] characters

Structured creditor reference, either international RF reference (ISO 11649) or Finnish reference number (viitenumero).

message
required
string [ 1 .. 40 ] characters

Free form message from debtor to creditor.

Responses

Request samples

Content type
application/json
{
  • "debtor": {
    },
  • "creditor": {
    },
  • "instructedAmount": {
    },
  • "instructionId": "string",
  • "endToEndId": "string",
  • "reference": "string",
  • "message": "string"
}

Response samples

Content type
application/json
{
  • "responderId": "string",
  • "responseTime": "string",
  • "message": "string",
  • "paymentStatus": "COMPLETED",
  • "paymentRequest": {
    }
}

Get payment status for a certain Request to Pay ID

Get payment status for a certain Request to Pay ID

Authorizations:
ApiKeyAuth
query Parameters
endToEndId
required
string [ 1 .. 35 ] characters

Search from payment with matching endToEndId.

Responses

Request samples

curl -X GET https://sandbox.apis.op.fi/r2p-sandbox/v1/payments \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' 

Response samples

Content type
application/json
{
  • "paymentStatus": "COMPLETED"
}