PayInProviderService

Pay-in provider surface for the Payment Intent flow.

Pay-in providers are those who:

  • Receive fiat payments from end-users
  • Publish payment intent (pay-in) quotes to the network
  • Confirm when payments are received via ConfirmFundsReceived
  • Settles periodically with the beneficiary provider

Provides the payment details presented to end-users for making payments.

Method NameRequest TypeResponse TypeDescription
GetPaymentDetailsGetPaymentDetailsRequestGetPaymentDetailsResponseReturns the payment details (bank account, mobile money, etc.) an end-user uses to send funds. The details must carry a payment reference that ties an incoming payment back to its payment intent.

Requests And Response Types

GetPaymentDetailsRequest

Request for payment details.

FieldTypeLabelDescription
payment_intent_iduint64The payment intent ID this request relates to.
confirmation_codestringThis is the confirmation code to be used later with ConfirmFundsReceived endpoint to prevent accidental confirmation of the wrong payment intent
payment_methodstzero.v1.common.PaymentMethodTyperepeatedPayment methods to return PaymentDetails for. Each is drawn from a previously submitted quote.
currencystringThe currency for the pay-in. ISO 4217 currency code (e.g., “EUR”, “GBP”, “KES”).
amounttzero.v1.common.DecimalThe amount to be paid in the specified currency.
travel_ruleGetPaymentDetailsRequest.TravelRuleDataTravel rule data for this payment
beneficiary_provider_iduint32The T-0 provider ID of the beneficiary provider (the FI the funds are destined for). Stable, opaque identifier for the beneficiary.

GetPaymentDetailsRequest.TravelRuleData

FieldTypeLabelDescription
beneficiaryivms101.PersonrepeatedThe natural or legal person or legal arrangement who is identified by the beneficiary provider as the receiver of the requested payment.
beneficiary_providerivms101.LegalPersonBeneficiary provider travel rule data.
payerivms101.Personoptionalno validation: ivms101.Person opaque to protovalidate; structural checks delegated to travel-rule layer

GetPaymentDetailsResponse

Response containing payment details for the requested methods.

FieldTypeLabelDescription
detailsGetPaymentDetailsResponse.Details
rejectionGetPaymentDetailsResponse.Rejection

GetPaymentDetailsResponse.Details

FieldTypeLabelDescription
payment_detailstzero.v1.common.PaymentDetailsrepeatedPayment details for each supported payment method. Each entry carries the information an end-user needs to send a payment (bank account, mobile money, etc.) plus a payment reference that identifies the incoming payment.

GetPaymentDetailsResponse.Rejection

FieldTypeLabelDescription
reasonstring