Documentation
¶
Index ¶
- Constants
- Variables
- func FormatAmount(amount int64, currency string) string
- func NewView(caller router.Caller, tenantId string) view.Presenter
- func StatusFor(err error) int
- func Transition(current, event string) (string, error)
- type ChargeReader
- type ChargeResult
- func (m *ChargeResult) DecodeFields(r model.FieldReader)
- func (m *ChargeResult) EncodeFields(w model.FieldWriter)
- func (m *ChargeResult) IsNil() bool
- func (m *ChargeResult) ModelName() string
- func (m *ChargeResult) Pointers() []any
- func (m *ChargeResult) Schema() []model.Field
- func (m *ChargeResult) Validate(action byte) error
- type ChargeResultList
- type ChargeSource
- type CreateCounterPaymentArgs
- func (m *CreateCounterPaymentArgs) DecodeFields(r model.FieldReader)
- func (m *CreateCounterPaymentArgs) EncodeFields(w model.FieldWriter)
- func (m *CreateCounterPaymentArgs) IsNil() bool
- func (m *CreateCounterPaymentArgs) ModelName() string
- func (m *CreateCounterPaymentArgs) Pointers() []any
- func (m *CreateCounterPaymentArgs) Schema() []model.Field
- func (m *CreateCounterPaymentArgs) Validate(action byte) error
- type CreateCounterPaymentArgsList
- func (s *CreateCounterPaymentArgsList) Append() model.Fielder
- func (s *CreateCounterPaymentArgsList) At(i int) model.Fielder
- func (s *CreateCounterPaymentArgsList) DecodeFields(_ model.FieldReader)
- func (s *CreateCounterPaymentArgsList) EncodeFields(_ model.FieldWriter)
- func (s *CreateCounterPaymentArgsList) IsNil() bool
- func (s *CreateCounterPaymentArgsList) Len() int
- type Deps
- type Gateway
- type GatewayRefund
- type GatewayResult
- type GatewayStart
- type GatewayStarted
- type GetChargeArgs
- func (m *GetChargeArgs) DecodeFields(r model.FieldReader)
- func (m *GetChargeArgs) EncodeFields(w model.FieldWriter)
- func (m *GetChargeArgs) IsNil() bool
- func (m *GetChargeArgs) ModelName() string
- func (m *GetChargeArgs) Pointers() []any
- func (m *GetChargeArgs) Schema() []model.Field
- func (m *GetChargeArgs) Validate(action byte) error
- type GetChargeArgsList
- func (s *GetChargeArgsList) Append() model.Fielder
- func (s *GetChargeArgsList) At(i int) model.Fielder
- func (s *GetChargeArgsList) DecodeFields(_ model.FieldReader)
- func (s *GetChargeArgsList) EncodeFields(_ model.FieldWriter)
- func (s *GetChargeArgsList) IsNil() bool
- func (s *GetChargeArgsList) Len() int
- type GetPaymentArgs
- func (m *GetPaymentArgs) DecodeFields(r model.FieldReader)
- func (m *GetPaymentArgs) EncodeFields(w model.FieldWriter)
- func (m *GetPaymentArgs) IsNil() bool
- func (m *GetPaymentArgs) ModelName() string
- func (m *GetPaymentArgs) Pointers() []any
- func (m *GetPaymentArgs) Schema() []model.Field
- func (m *GetPaymentArgs) Validate(action byte) error
- type GetPaymentArgsList
- func (s *GetPaymentArgsList) Append() model.Fielder
- func (s *GetPaymentArgsList) At(i int) model.Fielder
- func (s *GetPaymentArgsList) DecodeFields(_ model.FieldReader)
- func (s *GetPaymentArgsList) EncodeFields(_ model.FieldWriter)
- func (s *GetPaymentArgsList) IsNil() bool
- func (s *GetPaymentArgsList) Len() int
- type ListPaymentsArgs
- func (m *ListPaymentsArgs) DecodeFields(r model.FieldReader)
- func (m *ListPaymentsArgs) EncodeFields(w model.FieldWriter)
- func (m *ListPaymentsArgs) IsNil() bool
- func (m *ListPaymentsArgs) ModelName() string
- func (m *ListPaymentsArgs) Pointers() []any
- func (m *ListPaymentsArgs) Schema() []model.Field
- func (m *ListPaymentsArgs) Validate(action byte) error
- type ListPaymentsArgsList
- func (s *ListPaymentsArgsList) Append() model.Fielder
- func (s *ListPaymentsArgsList) At(i int) model.Fielder
- func (s *ListPaymentsArgsList) DecodeFields(_ model.FieldReader)
- func (s *ListPaymentsArgsList) EncodeFields(_ model.FieldWriter)
- func (s *ListPaymentsArgsList) IsNil() bool
- func (s *ListPaymentsArgsList) Len() int
- type ListPaymentsByReferenceArgs
- func (m *ListPaymentsByReferenceArgs) DecodeFields(r model.FieldReader)
- func (m *ListPaymentsByReferenceArgs) EncodeFields(w model.FieldWriter)
- func (m *ListPaymentsByReferenceArgs) IsNil() bool
- func (m *ListPaymentsByReferenceArgs) ModelName() string
- func (m *ListPaymentsByReferenceArgs) Pointers() []any
- func (m *ListPaymentsByReferenceArgs) Schema() []model.Field
- func (m *ListPaymentsByReferenceArgs) Validate(action byte) error
- type ListPaymentsByReferenceArgsList
- func (s *ListPaymentsByReferenceArgsList) Append() model.Fielder
- func (s *ListPaymentsByReferenceArgsList) At(i int) model.Fielder
- func (s *ListPaymentsByReferenceArgsList) DecodeFields(_ model.FieldReader)
- func (s *ListPaymentsByReferenceArgsList) EncodeFields(_ model.FieldWriter)
- func (s *ListPaymentsByReferenceArgsList) IsNil() bool
- func (s *ListPaymentsByReferenceArgsList) Len() int
- type ListRefundsArgs
- func (m *ListRefundsArgs) DecodeFields(r model.FieldReader)
- func (m *ListRefundsArgs) EncodeFields(w model.FieldWriter)
- func (m *ListRefundsArgs) IsNil() bool
- func (m *ListRefundsArgs) ModelName() string
- func (m *ListRefundsArgs) Pointers() []any
- func (m *ListRefundsArgs) Schema() []model.Field
- func (m *ListRefundsArgs) Validate(action byte) error
- type ListRefundsArgsList
- func (s *ListRefundsArgsList) Append() model.Fielder
- func (s *ListRefundsArgsList) At(i int) model.Fielder
- func (s *ListRefundsArgsList) DecodeFields(_ model.FieldReader)
- func (s *ListRefundsArgsList) EncodeFields(_ model.FieldWriter)
- func (s *ListRefundsArgsList) IsNil() bool
- func (s *ListRefundsArgsList) Len() int
- type Module
- func (m *Module) Charge(tenantId, referenceModule, referenceId string) (amount int64, currency string, payable bool, err error)
- func (m *Module) CompleteOnlinePayment(ret OnlineReturn) (Payment, error)
- func (m *Module) CreateCounterPayment(cmd CreateCounterPaymentArgs) (Payment, error)
- func (m *Module) GetPayment(tenantId, id string) (Payment, error)
- func (m *Module) ListPayments(tenantId string, from, to int64) ([]Payment, error)
- func (m *Module) ListPaymentsByReference(tenantId, referenceModule, referenceId string) ([]Payment, error)
- func (m *Module) ListRefunds(tenantId, paymentId string) ([]Refund, error)
- func (m *Module) ModelName() string
- func (m *Module) MountOperations(reg router.OperationRegistry)
- func (m *Module) PaidAmount(tenantId, paymentId, referenceModule, referenceId string) (amount int64, currency string, err error)
- func (m *Module) ReconcileOnlinePayments(tenantId string, now int64) (int, error)
- func (m *Module) RefundPayment(cmd RefundPaymentArgs) (Refund, error)
- func (m *Module) StartOnlinePayment(cmd StartOnlinePaymentArgs) (StartOnlinePaymentResult, error)
- type OnlineReturn
- type Payment
- func (m *Payment) DecodeFields(r model.FieldReader)
- func (m *Payment) EncodeFields(w model.FieldWriter)
- func (m *Payment) IsNil() bool
- func (p *Payment) Item() view.Item
- func (m *Payment) ModelName() string
- func (m *Payment) Pointers() []any
- func (m *Payment) Schema() []model.Field
- func (m *Payment) Validate(action byte) error
- type PaymentList
- type PaymentStatusResult
- func (m *PaymentStatusResult) DecodeFields(r model.FieldReader)
- func (m *PaymentStatusResult) EncodeFields(w model.FieldWriter)
- func (m *PaymentStatusResult) IsNil() bool
- func (m *PaymentStatusResult) ModelName() string
- func (m *PaymentStatusResult) Pointers() []any
- func (m *PaymentStatusResult) Schema() []model.Field
- func (m *PaymentStatusResult) Validate(action byte) error
- type PaymentStatusResultList
- func (s *PaymentStatusResultList) Append() model.Fielder
- func (s *PaymentStatusResultList) At(i int) model.Fielder
- func (s *PaymentStatusResultList) DecodeFields(_ model.FieldReader)
- func (s *PaymentStatusResultList) EncodeFields(_ model.FieldWriter)
- func (s *PaymentStatusResultList) IsNil() bool
- func (s *PaymentStatusResultList) Len() int
- type ReconcileOnlinePaymentsArgs
- func (m *ReconcileOnlinePaymentsArgs) DecodeFields(r model.FieldReader)
- func (m *ReconcileOnlinePaymentsArgs) EncodeFields(w model.FieldWriter)
- func (m *ReconcileOnlinePaymentsArgs) IsNil() bool
- func (m *ReconcileOnlinePaymentsArgs) ModelName() string
- func (m *ReconcileOnlinePaymentsArgs) Pointers() []any
- func (m *ReconcileOnlinePaymentsArgs) Schema() []model.Field
- func (m *ReconcileOnlinePaymentsArgs) Validate(action byte) error
- type ReconcileOnlinePaymentsArgsList
- func (s *ReconcileOnlinePaymentsArgsList) Append() model.Fielder
- func (s *ReconcileOnlinePaymentsArgsList) At(i int) model.Fielder
- func (s *ReconcileOnlinePaymentsArgsList) DecodeFields(_ model.FieldReader)
- func (s *ReconcileOnlinePaymentsArgsList) EncodeFields(_ model.FieldWriter)
- func (s *ReconcileOnlinePaymentsArgsList) IsNil() bool
- func (s *ReconcileOnlinePaymentsArgsList) Len() int
- type ReconcileResult
- func (m *ReconcileResult) DecodeFields(r model.FieldReader)
- func (m *ReconcileResult) EncodeFields(w model.FieldWriter)
- func (m *ReconcileResult) IsNil() bool
- func (m *ReconcileResult) ModelName() string
- func (m *ReconcileResult) Pointers() []any
- func (m *ReconcileResult) Schema() []model.Field
- func (m *ReconcileResult) Validate(action byte) error
- type ReconcileResultList
- func (s *ReconcileResultList) Append() model.Fielder
- func (s *ReconcileResultList) At(i int) model.Fielder
- func (s *ReconcileResultList) DecodeFields(_ model.FieldReader)
- func (s *ReconcileResultList) EncodeFields(_ model.FieldWriter)
- func (s *ReconcileResultList) IsNil() bool
- func (s *ReconcileResultList) Len() int
- type Refund
- func (m *Refund) DecodeFields(r model.FieldReader)
- func (m *Refund) EncodeFields(w model.FieldWriter)
- func (m *Refund) IsNil() bool
- func (m *Refund) ModelName() string
- func (m *Refund) Pointers() []any
- func (m *Refund) Schema() []model.Field
- func (m *Refund) SchemaExt() []model.FieldExt
- func (m *Refund) Validate(action byte) error
- type RefundList
- type RefundPaymentArgs
- func (m *RefundPaymentArgs) DecodeFields(r model.FieldReader)
- func (m *RefundPaymentArgs) EncodeFields(w model.FieldWriter)
- func (m *RefundPaymentArgs) IsNil() bool
- func (m *RefundPaymentArgs) ModelName() string
- func (m *RefundPaymentArgs) Pointers() []any
- func (m *RefundPaymentArgs) Schema() []model.Field
- func (m *RefundPaymentArgs) Validate(action byte) error
- type RefundPaymentArgsList
- func (s *RefundPaymentArgsList) Append() model.Fielder
- func (s *RefundPaymentArgsList) At(i int) model.Fielder
- func (s *RefundPaymentArgsList) DecodeFields(_ model.FieldReader)
- func (s *RefundPaymentArgsList) EncodeFields(_ model.FieldWriter)
- func (s *RefundPaymentArgsList) IsNil() bool
- func (s *RefundPaymentArgsList) Len() int
- type StartOnlinePaymentArgs
- func (m *StartOnlinePaymentArgs) DecodeFields(r model.FieldReader)
- func (m *StartOnlinePaymentArgs) EncodeFields(w model.FieldWriter)
- func (m *StartOnlinePaymentArgs) IsNil() bool
- func (m *StartOnlinePaymentArgs) ModelName() string
- func (m *StartOnlinePaymentArgs) Pointers() []any
- func (m *StartOnlinePaymentArgs) Schema() []model.Field
- func (m *StartOnlinePaymentArgs) Validate(action byte) error
- type StartOnlinePaymentArgsList
- func (s *StartOnlinePaymentArgsList) Append() model.Fielder
- func (s *StartOnlinePaymentArgsList) At(i int) model.Fielder
- func (s *StartOnlinePaymentArgsList) DecodeFields(_ model.FieldReader)
- func (s *StartOnlinePaymentArgsList) EncodeFields(_ model.FieldWriter)
- func (s *StartOnlinePaymentArgsList) IsNil() bool
- func (s *StartOnlinePaymentArgsList) Len() int
- type StartOnlinePaymentResult
- func (m *StartOnlinePaymentResult) DecodeFields(r model.FieldReader)
- func (m *StartOnlinePaymentResult) EncodeFields(w model.FieldWriter)
- func (m *StartOnlinePaymentResult) IsNil() bool
- func (m *StartOnlinePaymentResult) ModelName() string
- func (m *StartOnlinePaymentResult) Pointers() []any
- func (m *StartOnlinePaymentResult) Schema() []model.Field
- func (m *StartOnlinePaymentResult) Validate(action byte) error
- type StartOnlinePaymentResultList
- func (s *StartOnlinePaymentResultList) Append() model.Fielder
- func (s *StartOnlinePaymentResultList) At(i int) model.Fielder
- func (s *StartOnlinePaymentResultList) DecodeFields(_ model.FieldReader)
- func (s *StartOnlinePaymentResultList) EncodeFields(_ model.FieldWriter)
- func (s *StartOnlinePaymentResultList) IsNil() bool
- func (s *StartOnlinePaymentResultList) Len() int
Constants ¶
const ( ErrNotFound = domainError("payment not found") ErrRefundNotFound = domainError("refund not found") ErrMissingArgs = domainError("missing required arguments") ErrUnknownReference = domainError("no charge reader for this reference module") ErrNotPayable = domainError("the reference has nothing to pay") ErrUnsupportedCurrency = domainError("unsupported currency") ErrInvalidMethod = domainError("invalid payment method for this channel") ErrInvalidTransition = domainError("invalid payment status transition") ErrRefundExceeds = domainError("refund amount exceeds what is left to refund") ErrIdTaken = domainError("id already used by another operation") ErrAlreadyPaid = domainError("the reference is already paid") ErrNotPaid = domainError("payment is not paid") ErrConflict = domainError("payment changed concurrently") ErrGatewayFailed = domainError("payment gateway call failed") ErrAmountMismatch = domainError("gateway amount differs from the payment amount") )
const ( EventPay = "PAY" EventFail = "FAIL" EventCancel = "CANCEL" EventExpire = "EXPIRE" EventRefundPartial = "REFUND_PARTIAL" EventRefundTotal = "REFUND_TOTAL" )
Eventos de la máquina de estados del pago.
const ( ChannelCounter = "counter" ChannelOnline = "online" )
const ( MethodCash = "cash" MethodDebit = "debit" MethodCredit = "credit" MethodTransfer = "transfer" MethodWebpay = "webpay" )
const ( CurrencyCLP = "CLP" CurrencyUSD = "USD" )
const ( StatusPending = "PENDING" StatusPaid = "PAID" StatusFailed = "FAILED" StatusCancelled = "CANCELLED" // el cliente abandonó el pago online StatusExpired = "EXPIRED" // venció sin respuesta de la pasarela StatusPartiallyRefunded = "PARTIALLY_REFUNDED" StatusRefunded = "REFUNDED" )
const ( RefundKindReversed = "REVERSED" // pasarela: reversa total RefundKindNullified = "NULLIFIED" // pasarela: anulación total o parcial RefundKindManual = "MANUAL" // mesón: devolución registrada por el cajero )
const ( OnlinePendingTimeout = 600 // un pago online PENDING más viejo que esto se concilia GatewayStatusWindow = 7 * 86400 // la pasarela guarda el estado 7 días )
Tiempos (segundos).
const ( EventPaymentPaid = "payment.paid" EventPaymentFailed = "payment.failed" EventPaymentRefunded = "payment.refunded" )
Eventos publicados después de cada mutación exitosa. Payload: *Payment, o *Refund en EventPaymentRefunded.
const ( OpGetCharge = "get_charge" OpCreateCounterPayment = "create_counter_payment" OpStartOnlinePayment = "start_online_payment" OpGetPaymentStatus = "get_payment_status" OpGetPayment = "get_payment" OpListPaymentsByReference = "list_payments_by_reference" OpListPayments = "list_payments" OpRefundPayment = "refund_payment" OpListRefunds = "list_refunds" OpReconcileOnlinePayments = "reconcile_online_payments" )
Operaciones del módulo; en el cable van como "payment_manager.<op>".
const ( ResourcePayment = "payment" ResourcePaymentOnline = "payment_online" ResourceRefund = "refund" )
Recursos RBAC. La app concede ResourcePaymentOnline a la identidad anónima para la reserva online; el resto, solo al personal.
const ( QueryPayment = "payment" QueryStatus = "status" )
QueryPayment y QueryStatus son los parámetros de la query con que la ruta de retorno de la pasarela devuelve el navegador a la app: /?payment=<id>&status=<estado>#<pantalla>.
const ( OutcomePending = "pending" OutcomeAuthorized = "authorized" OutcomeRejected = "rejected" )
const ListWindowSeconds = 30 * 86400
ListWindowSeconds es cuánto hacia atrás muestra la lista de pagos: 30 días.
const ModelName = "payment_manager"
Variables ¶
var ChargeResultModel = model.Definition{ Name: "charge_result", Fields: model.Fields{ {Name: "amount", Type: model.Int()}, {Name: "currency", Type: model.Text()}, {Name: "payable", Type: model.Bool()}, }, }
var CreateCounterPaymentArgsModel = model.Definition{ Name: "create_counter_payment_args", Fields: model.Fields{ {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "id", Type: model.Text(), NotNull: true}, {Name: "reference_module", Type: model.Text(), NotNull: true}, {Name: "reference_id", Type: model.Text(), NotNull: true}, {Name: "method", Type: input.Radio(), NotNull: true}, {Name: "receipt_number", Type: model.Text()}, }, }
var GetChargeArgsModel = model.Definition{ Name: "get_charge_args", Fields: model.Fields{ {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "reference_module", Type: model.Text(), NotNull: true}, {Name: "reference_id", Type: model.Text(), NotNull: true}, }, }
var GetPaymentArgsModel = model.Definition{ Name: "get_payment_args", Fields: model.Fields{ {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "id", Type: model.Text(), NotNull: true}, }, }
var ListPaymentsArgsModel = model.Definition{ Name: "list_payments_args", Fields: model.Fields{ {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "from", Type: model.Int(), NotNull: true}, {Name: "to", Type: model.Int(), NotNull: true}, }, }
var ListPaymentsByReferenceArgsModel = model.Definition{ Name: "list_payments_by_reference_args", Fields: model.Fields{ {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "reference_module", Type: model.Text(), NotNull: true}, {Name: "reference_id", Type: model.Text(), NotNull: true}, }, }
var ListRefundsArgsModel = model.Definition{ Name: "list_refunds_args", Fields: model.Fields{ {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "payment_id", Type: model.Text(), NotNull: true}, }, }
var PaymentModel = model.Definition{ Name: "payment", Fields: model.Fields{ {Name: "id", Type: model.Text(), DB: &model.FieldDB{PK: true}, NotNull: true, Permitted: model.Permitted{Letters: true, Numbers: true, Extra: []rune{'.', '-', '_'}, Minimum: 1, Maximum: 26}}, {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "reference_module", Type: model.Text(), NotNull: true, Permitted: model.Permitted{Maximum: 60}}, {Name: "reference_id", Type: model.Text(), NotNull: true, Permitted: model.Permitted{Maximum: 64}}, {Name: "channel", Type: model.Text(), NotNull: true}, {Name: "method", Type: model.Text(), NotNull: true}, {Name: "amount", Type: model.Int(), NotNull: true}, {Name: "currency", Type: model.Text(), NotNull: true, Permitted: model.Permitted{Letters: true, Minimum: 3, Maximum: 3}}, {Name: "status", Type: model.Text(), NotNull: true}, {Name: "refunded_amount", Type: model.Int()}, {Name: "provider_token", Type: model.Text(), OmitEmpty: true}, {Name: "authorization_code", Type: model.Text(), OmitEmpty: true, Permitted: model.Permitted{Letters: true, Numbers: true, Maximum: 6}}, {Name: "payment_type_code", Type: model.Text(), OmitEmpty: true, Permitted: model.Permitted{Letters: true, Maximum: 2}}, {Name: "installments", Type: model.Int(), OmitEmpty: true}, {Name: "card_last4", Type: model.Text(), OmitEmpty: true, Permitted: model.Permitted{Numbers: true, Maximum: 4}}, {Name: "receipt_number", Type: model.Text(), OmitEmpty: true, Permitted: model.Permitted{Maximum: 40}}, {Name: "return_to", Type: model.Text(), OmitEmpty: true, Permitted: model.Permitted{Letters: true, Numbers: true, Extra: []rune{'_', '-'}, Maximum: 60}}, {Name: "created_by", Type: model.Text(), OmitEmpty: true}, {Name: "created_at", Type: model.Int()}, {Name: "paid_at", Type: model.Int(), OmitEmpty: true}, {Name: "updated_at", Type: model.Int()}, {Name: "revision", Type: model.Int()}, }, }
var PaymentStatusResultModel = model.Definition{ Name: "payment_status_result", Fields: model.Fields{ {Name: "id", Type: model.Text()}, {Name: "status", Type: model.Text()}, }, }
var Payment_ = struct { Id string TenantId string ReferenceModule string ReferenceId string Channel string Method string Amount string Currency string Status string RefundedAmount string ProviderToken string AuthorizationCode string PaymentTypeCode string Installments string CardLast4 string ReceiptNumber string ReturnTo string CreatedBy string CreatedAt string PaidAt string UpdatedAt string Revision string }{ Id: "id", TenantId: "tenant_id", ReferenceModule: "reference_module", ReferenceId: "reference_id", Channel: "channel", Method: "method", Amount: "amount", Currency: "currency", Status: "status", RefundedAmount: "refunded_amount", ProviderToken: "provider_token", AuthorizationCode: "authorization_code", PaymentTypeCode: "payment_type_code", Installments: "installments", CardLast4: "card_last4", ReceiptNumber: "receipt_number", ReturnTo: "return_to", CreatedBy: "created_by", CreatedAt: "created_at", PaidAt: "paid_at", UpdatedAt: "updated_at", Revision: "revision", }
var ReconcileOnlinePaymentsArgsModel = model.Definition{ Name: "reconcile_online_payments_args", Fields: model.Fields{ {Name: "tenant_id", Type: model.Text(), NotNull: true}, }, }
var ReconcileResultModel = model.Definition{ Name: "reconcile_result", Fields: model.Fields{ {Name: "closed", Type: model.Int()}, }, }
var RefundModel = model.Definition{ Name: "refund", Fields: model.Fields{ {Name: "id", Type: model.Text(), DB: &model.FieldDB{PK: true}, NotNull: true, Permitted: model.Permitted{Letters: true, Numbers: true, Extra: []rune{'.', '-', '_'}, Minimum: 1, Maximum: 26}}, {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "payment_id", Type: model.Text(), Ref: &PaymentModel, DB: &model.FieldDB{RefColumn: "id"}, NotNull: true}, {Name: "amount", Type: model.Int(), NotNull: true}, {Name: "kind", Type: model.Text(), NotNull: true}, {Name: "method", Type: model.Text(), OmitEmpty: true}, {Name: "reason", Type: input.Textarea(), NotNull: true, Permitted: model.Permitted{Maximum: 255}}, {Name: "authorization_code", Type: model.Text(), OmitEmpty: true}, {Name: "created_by", Type: model.Text(), OmitEmpty: true}, {Name: "created_at", Type: model.Int()}, }, }
var RefundPaymentArgsModel = model.Definition{ Name: "refund_payment_args", Fields: model.Fields{ {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "id", Type: model.Text(), NotNull: true}, {Name: "payment_id", Type: model.Text(), NotNull: true}, {Name: "amount", Type: model.Int(), NotNull: true}, {Name: "reason", Type: input.Textarea(), NotNull: true, Permitted: model.Permitted{Maximum: 255}}, {Name: "method", Type: model.Text()}, }, }
var Refund_ = struct { Id string TenantId string PaymentId string Amount string Kind string Method string Reason string AuthorizationCode string CreatedBy string CreatedAt string }{ Id: "id", TenantId: "tenant_id", PaymentId: "payment_id", Amount: "amount", Kind: "kind", Method: "method", Reason: "reason", AuthorizationCode: "authorization_code", CreatedBy: "created_by", CreatedAt: "created_at", }
var StartOnlinePaymentArgsModel = model.Definition{ Name: "start_online_payment_args", Fields: model.Fields{ {Name: "tenant_id", Type: model.Text(), NotNull: true}, {Name: "id", Type: model.Text(), NotNull: true}, {Name: "reference_module", Type: model.Text(), NotNull: true}, {Name: "reference_id", Type: model.Text(), NotNull: true}, {Name: "return_to", Type: model.Text(), Permitted: model.Permitted{Letters: true, Numbers: true, Extra: []rune{'_', '-'}, Maximum: 60}}, }, }
Functions ¶
func FormatAmount ¶ added in v0.1.0
func NewView ¶ added in v0.1.0
NewView construye el Presenter de solo lectura de los pagos del tenant de los últimos ListWindowSeconds.
func StatusFor ¶ added in v0.1.0
StatusFor es el código HTTP de un error del módulo (tabla del plan, §5).
func Transition ¶ added in v0.1.0
Transition devuelve el estado al que lleva event desde current, o ErrInvalidTransition.
Types ¶
type ChargeReader ¶ added in v0.1.0
type ChargeResult ¶ added in v0.1.0
func (*ChargeResult) DecodeFields ¶ added in v0.1.0
func (m *ChargeResult) DecodeFields(r model.FieldReader)
func (*ChargeResult) EncodeFields ¶ added in v0.1.0
func (m *ChargeResult) EncodeFields(w model.FieldWriter)
func (*ChargeResult) IsNil ¶ added in v0.1.0
func (m *ChargeResult) IsNil() bool
func (*ChargeResult) ModelName ¶ added in v0.1.0
func (m *ChargeResult) ModelName() string
func (*ChargeResult) Pointers ¶ added in v0.1.0
func (m *ChargeResult) Pointers() []any
func (*ChargeResult) Schema ¶ added in v0.1.0
func (m *ChargeResult) Schema() []model.Field
func (*ChargeResult) Validate ¶ added in v0.1.0
func (m *ChargeResult) Validate(action byte) error
type ChargeResultList ¶ added in v0.1.0
type ChargeResultList []*ChargeResult
func (*ChargeResultList) Append ¶ added in v0.1.0
func (s *ChargeResultList) Append() model.Fielder
func (*ChargeResultList) DecodeFields ¶ added in v0.1.0
func (s *ChargeResultList) DecodeFields(_ model.FieldReader)
func (*ChargeResultList) EncodeFields ¶ added in v0.1.0
func (s *ChargeResultList) EncodeFields(_ model.FieldWriter)
func (*ChargeResultList) IsNil ¶ added in v0.1.0
func (s *ChargeResultList) IsNil() bool
func (*ChargeResultList) Len ¶ added in v0.1.0
func (s *ChargeResultList) Len() int
type ChargeSource ¶ added in v0.1.0
type ChargeSource struct {
Module string
Reader ChargeReader
}
type CreateCounterPaymentArgs ¶ added in v0.1.0
type CreateCounterPaymentArgs struct {
TenantId string
Id string
ReferenceModule string
ReferenceId string
Method string
ReceiptNumber string
}
func (*CreateCounterPaymentArgs) DecodeFields ¶ added in v0.1.0
func (m *CreateCounterPaymentArgs) DecodeFields(r model.FieldReader)
func (*CreateCounterPaymentArgs) EncodeFields ¶ added in v0.1.0
func (m *CreateCounterPaymentArgs) EncodeFields(w model.FieldWriter)
func (*CreateCounterPaymentArgs) IsNil ¶ added in v0.1.0
func (m *CreateCounterPaymentArgs) IsNil() bool
func (*CreateCounterPaymentArgs) ModelName ¶ added in v0.1.0
func (m *CreateCounterPaymentArgs) ModelName() string
func (*CreateCounterPaymentArgs) Pointers ¶ added in v0.1.0
func (m *CreateCounterPaymentArgs) Pointers() []any
func (*CreateCounterPaymentArgs) Schema ¶ added in v0.1.0
func (m *CreateCounterPaymentArgs) Schema() []model.Field
func (*CreateCounterPaymentArgs) Validate ¶ added in v0.1.0
func (m *CreateCounterPaymentArgs) Validate(action byte) error
type CreateCounterPaymentArgsList ¶ added in v0.1.0
type CreateCounterPaymentArgsList []*CreateCounterPaymentArgs
func (*CreateCounterPaymentArgsList) Append ¶ added in v0.1.0
func (s *CreateCounterPaymentArgsList) Append() model.Fielder
func (*CreateCounterPaymentArgsList) At ¶ added in v0.1.0
func (s *CreateCounterPaymentArgsList) At(i int) model.Fielder
func (*CreateCounterPaymentArgsList) DecodeFields ¶ added in v0.1.0
func (s *CreateCounterPaymentArgsList) DecodeFields(_ model.FieldReader)
func (*CreateCounterPaymentArgsList) EncodeFields ¶ added in v0.1.0
func (s *CreateCounterPaymentArgsList) EncodeFields(_ model.FieldWriter)
func (*CreateCounterPaymentArgsList) IsNil ¶ added in v0.1.0
func (s *CreateCounterPaymentArgsList) IsNil() bool
func (*CreateCounterPaymentArgsList) Len ¶ added in v0.1.0
func (s *CreateCounterPaymentArgsList) Len() int
type Deps ¶ added in v0.1.0
type Deps struct {
Publisher events.Publisher // opcional — nil desactiva la publicación
Gateway Gateway // opcional — nil: el canal online responde ErrGatewayUnavailable
ReturnURL string // requerido con Gateway: URL absoluta de la ruta de retorno
Charges []ChargeSource // requerido: quién responde el monto de cada módulo de referencia
}
Deps son las dependencias que inyecta la raíz de composición.
type Gateway ¶ added in v0.1.0
type Gateway interface {
Start(req GatewayStart) (GatewayStarted, error)
Commit(token string) (GatewayResult, error)
Status(token string) (GatewayResult, error)
Refund(token string, amount int64) (GatewayRefund, error)
}
Gateway es la pasarela de pago online. La implementación concreta (github.com/veltylabs/transbank) la inyecta la app; sus llamadas son síncronas y solo corren en el servidor.
type GatewayRefund ¶ added in v0.1.0
type GatewayResult ¶ added in v0.1.0
type GatewayStart ¶ added in v0.1.0
type GatewayStarted ¶ added in v0.1.0
type GetChargeArgs ¶ added in v0.1.0
func (*GetChargeArgs) DecodeFields ¶ added in v0.1.0
func (m *GetChargeArgs) DecodeFields(r model.FieldReader)
func (*GetChargeArgs) EncodeFields ¶ added in v0.1.0
func (m *GetChargeArgs) EncodeFields(w model.FieldWriter)
func (*GetChargeArgs) IsNil ¶ added in v0.1.0
func (m *GetChargeArgs) IsNil() bool
func (*GetChargeArgs) ModelName ¶ added in v0.1.0
func (m *GetChargeArgs) ModelName() string
func (*GetChargeArgs) Pointers ¶ added in v0.1.0
func (m *GetChargeArgs) Pointers() []any
func (*GetChargeArgs) Schema ¶ added in v0.1.0
func (m *GetChargeArgs) Schema() []model.Field
func (*GetChargeArgs) Validate ¶ added in v0.1.0
func (m *GetChargeArgs) Validate(action byte) error
type GetChargeArgsList ¶ added in v0.1.0
type GetChargeArgsList []*GetChargeArgs
func (*GetChargeArgsList) Append ¶ added in v0.1.0
func (s *GetChargeArgsList) Append() model.Fielder
func (*GetChargeArgsList) DecodeFields ¶ added in v0.1.0
func (s *GetChargeArgsList) DecodeFields(_ model.FieldReader)
func (*GetChargeArgsList) EncodeFields ¶ added in v0.1.0
func (s *GetChargeArgsList) EncodeFields(_ model.FieldWriter)
func (*GetChargeArgsList) IsNil ¶ added in v0.1.0
func (s *GetChargeArgsList) IsNil() bool
func (*GetChargeArgsList) Len ¶ added in v0.1.0
func (s *GetChargeArgsList) Len() int
type GetPaymentArgs ¶ added in v0.1.0
func (*GetPaymentArgs) DecodeFields ¶ added in v0.1.0
func (m *GetPaymentArgs) DecodeFields(r model.FieldReader)
func (*GetPaymentArgs) EncodeFields ¶ added in v0.1.0
func (m *GetPaymentArgs) EncodeFields(w model.FieldWriter)
func (*GetPaymentArgs) IsNil ¶ added in v0.1.0
func (m *GetPaymentArgs) IsNil() bool
func (*GetPaymentArgs) ModelName ¶ added in v0.1.0
func (m *GetPaymentArgs) ModelName() string
func (*GetPaymentArgs) Pointers ¶ added in v0.1.0
func (m *GetPaymentArgs) Pointers() []any
func (*GetPaymentArgs) Schema ¶ added in v0.1.0
func (m *GetPaymentArgs) Schema() []model.Field
func (*GetPaymentArgs) Validate ¶ added in v0.1.0
func (m *GetPaymentArgs) Validate(action byte) error
type GetPaymentArgsList ¶ added in v0.1.0
type GetPaymentArgsList []*GetPaymentArgs
func (*GetPaymentArgsList) Append ¶ added in v0.1.0
func (s *GetPaymentArgsList) Append() model.Fielder
func (*GetPaymentArgsList) At ¶ added in v0.1.0
func (s *GetPaymentArgsList) At(i int) model.Fielder
func (*GetPaymentArgsList) DecodeFields ¶ added in v0.1.0
func (s *GetPaymentArgsList) DecodeFields(_ model.FieldReader)
func (*GetPaymentArgsList) EncodeFields ¶ added in v0.1.0
func (s *GetPaymentArgsList) EncodeFields(_ model.FieldWriter)
func (*GetPaymentArgsList) IsNil ¶ added in v0.1.0
func (s *GetPaymentArgsList) IsNil() bool
func (*GetPaymentArgsList) Len ¶ added in v0.1.0
func (s *GetPaymentArgsList) Len() int
type ListPaymentsArgs ¶ added in v0.1.0
func (*ListPaymentsArgs) DecodeFields ¶ added in v0.1.0
func (m *ListPaymentsArgs) DecodeFields(r model.FieldReader)
func (*ListPaymentsArgs) EncodeFields ¶ added in v0.1.0
func (m *ListPaymentsArgs) EncodeFields(w model.FieldWriter)
func (*ListPaymentsArgs) IsNil ¶ added in v0.1.0
func (m *ListPaymentsArgs) IsNil() bool
func (*ListPaymentsArgs) ModelName ¶ added in v0.1.0
func (m *ListPaymentsArgs) ModelName() string
func (*ListPaymentsArgs) Pointers ¶ added in v0.1.0
func (m *ListPaymentsArgs) Pointers() []any
func (*ListPaymentsArgs) Schema ¶ added in v0.1.0
func (m *ListPaymentsArgs) Schema() []model.Field
func (*ListPaymentsArgs) Validate ¶ added in v0.1.0
func (m *ListPaymentsArgs) Validate(action byte) error
type ListPaymentsArgsList ¶ added in v0.1.0
type ListPaymentsArgsList []*ListPaymentsArgs
func (*ListPaymentsArgsList) Append ¶ added in v0.1.0
func (s *ListPaymentsArgsList) Append() model.Fielder
func (*ListPaymentsArgsList) At ¶ added in v0.1.0
func (s *ListPaymentsArgsList) At(i int) model.Fielder
func (*ListPaymentsArgsList) DecodeFields ¶ added in v0.1.0
func (s *ListPaymentsArgsList) DecodeFields(_ model.FieldReader)
func (*ListPaymentsArgsList) EncodeFields ¶ added in v0.1.0
func (s *ListPaymentsArgsList) EncodeFields(_ model.FieldWriter)
func (*ListPaymentsArgsList) IsNil ¶ added in v0.1.0
func (s *ListPaymentsArgsList) IsNil() bool
func (*ListPaymentsArgsList) Len ¶ added in v0.1.0
func (s *ListPaymentsArgsList) Len() int
type ListPaymentsByReferenceArgs ¶ added in v0.1.0
type ListPaymentsByReferenceArgs struct {
TenantId string
ReferenceModule string
ReferenceId string
}
func (*ListPaymentsByReferenceArgs) DecodeFields ¶ added in v0.1.0
func (m *ListPaymentsByReferenceArgs) DecodeFields(r model.FieldReader)
func (*ListPaymentsByReferenceArgs) EncodeFields ¶ added in v0.1.0
func (m *ListPaymentsByReferenceArgs) EncodeFields(w model.FieldWriter)
func (*ListPaymentsByReferenceArgs) IsNil ¶ added in v0.1.0
func (m *ListPaymentsByReferenceArgs) IsNil() bool
func (*ListPaymentsByReferenceArgs) ModelName ¶ added in v0.1.0
func (m *ListPaymentsByReferenceArgs) ModelName() string
func (*ListPaymentsByReferenceArgs) Pointers ¶ added in v0.1.0
func (m *ListPaymentsByReferenceArgs) Pointers() []any
func (*ListPaymentsByReferenceArgs) Schema ¶ added in v0.1.0
func (m *ListPaymentsByReferenceArgs) Schema() []model.Field
func (*ListPaymentsByReferenceArgs) Validate ¶ added in v0.1.0
func (m *ListPaymentsByReferenceArgs) Validate(action byte) error
type ListPaymentsByReferenceArgsList ¶ added in v0.1.0
type ListPaymentsByReferenceArgsList []*ListPaymentsByReferenceArgs
func (*ListPaymentsByReferenceArgsList) Append ¶ added in v0.1.0
func (s *ListPaymentsByReferenceArgsList) Append() model.Fielder
func (*ListPaymentsByReferenceArgsList) At ¶ added in v0.1.0
func (s *ListPaymentsByReferenceArgsList) At(i int) model.Fielder
func (*ListPaymentsByReferenceArgsList) DecodeFields ¶ added in v0.1.0
func (s *ListPaymentsByReferenceArgsList) DecodeFields(_ model.FieldReader)
func (*ListPaymentsByReferenceArgsList) EncodeFields ¶ added in v0.1.0
func (s *ListPaymentsByReferenceArgsList) EncodeFields(_ model.FieldWriter)
func (*ListPaymentsByReferenceArgsList) IsNil ¶ added in v0.1.0
func (s *ListPaymentsByReferenceArgsList) IsNil() bool
func (*ListPaymentsByReferenceArgsList) Len ¶ added in v0.1.0
func (s *ListPaymentsByReferenceArgsList) Len() int
type ListRefundsArgs ¶ added in v0.1.0
func (*ListRefundsArgs) DecodeFields ¶ added in v0.1.0
func (m *ListRefundsArgs) DecodeFields(r model.FieldReader)
func (*ListRefundsArgs) EncodeFields ¶ added in v0.1.0
func (m *ListRefundsArgs) EncodeFields(w model.FieldWriter)
func (*ListRefundsArgs) IsNil ¶ added in v0.1.0
func (m *ListRefundsArgs) IsNil() bool
func (*ListRefundsArgs) ModelName ¶ added in v0.1.0
func (m *ListRefundsArgs) ModelName() string
func (*ListRefundsArgs) Pointers ¶ added in v0.1.0
func (m *ListRefundsArgs) Pointers() []any
func (*ListRefundsArgs) Schema ¶ added in v0.1.0
func (m *ListRefundsArgs) Schema() []model.Field
func (*ListRefundsArgs) Validate ¶ added in v0.1.0
func (m *ListRefundsArgs) Validate(action byte) error
type ListRefundsArgsList ¶ added in v0.1.0
type ListRefundsArgsList []*ListRefundsArgs
func (*ListRefundsArgsList) Append ¶ added in v0.1.0
func (s *ListRefundsArgsList) Append() model.Fielder
func (*ListRefundsArgsList) At ¶ added in v0.1.0
func (s *ListRefundsArgsList) At(i int) model.Fielder
func (*ListRefundsArgsList) DecodeFields ¶ added in v0.1.0
func (s *ListRefundsArgsList) DecodeFields(_ model.FieldReader)
func (*ListRefundsArgsList) EncodeFields ¶ added in v0.1.0
func (s *ListRefundsArgsList) EncodeFields(_ model.FieldWriter)
func (*ListRefundsArgsList) IsNil ¶ added in v0.1.0
func (s *ListRefundsArgsList) IsNil() bool
func (*ListRefundsArgsList) Len ¶ added in v0.1.0
func (s *ListRefundsArgsList) Len() int
type Module ¶ added in v0.1.0
type Module struct {
// contains filtered or unexported fields
}
Module registra, confirma y devuelve pagos.
func (*Module) Charge ¶ added in v0.1.0
func (m *Module) Charge(tenantId, referenceModule, referenceId string) (amount int64, currency string, payable bool, err error)
Charge pregunta al módulo dueño de la referencia cuánto se cobra. El monto nunca viene del cliente.
func (*Module) CompleteOnlinePayment ¶ added in v0.1.0
func (m *Module) CompleteOnlinePayment(ret OnlineReturn) (Payment, error)
CompleteOnlinePayment termina un pago online con lo que devolvió la pasarela (ver OnlineReturn). Es idempotente: un pago que ya no está PENDING se devuelve tal cual.
func (*Module) CreateCounterPayment ¶ added in v0.1.0
func (m *Module) CreateCounterPayment(cmd CreateCounterPaymentArgs) (Payment, error)
CreateCounterPayment registra un pago hecho en el mesón. Nace pagado. Repetir el mismo id con la misma referencia devuelve el pago guardado.
func (*Module) GetPayment ¶ added in v0.1.0
GetPayment lee un pago del tenant.
func (*Module) ListPayments ¶ added in v0.1.0
ListPayments lista los pagos creados en [from, to) (segundos).
func (*Module) ListPaymentsByReference ¶ added in v0.1.0
func (m *Module) ListPaymentsByReference(tenantId, referenceModule, referenceId string) ([]Payment, error)
ListPaymentsByReference lista los pagos de una referencia.
func (*Module) ListRefunds ¶ added in v0.1.0
ListRefunds lista las devoluciones de un pago.
func (*Module) MountOperations ¶ added in v0.1.0
func (m *Module) MountOperations(reg router.OperationRegistry)
func (*Module) PaidAmount ¶ added in v0.1.0
func (m *Module) PaidAmount(tenantId, paymentId, referenceModule, referenceId string) (amount int64, currency string, err error)
PaidAmount verifica un pago para el módulo dueño de la referencia: devuelve el monto neto (pagado menos devuelto) solo si el pago es de esa referencia y está pagado.
func (*Module) ReconcileOnlinePayments ¶ added in v0.1.0
ReconcileOnlinePayments cierra los pagos online que siguen PENDING después de OnlinePendingTimeout (diagrama §8). Devuelve cuántos cerró. Sin pasarela no hay pagos online que cerrar.
func (*Module) RefundPayment ¶ added in v0.1.0
func (m *Module) RefundPayment(cmd RefundPaymentArgs) (Refund, error)
RefundPayment devuelve amount de un pago pagado. En online lo pide a la pasarela; en mesón registra la devolución con su medio.
func (*Module) StartOnlinePayment ¶ added in v0.1.0
func (m *Module) StartOnlinePayment(cmd StartOnlinePaymentArgs) (StartOnlinePaymentResult, error)
StartOnlinePayment crea el pago PENDING y pide a la pasarela un token y la URL a la que se envía al cliente.
type OnlineReturn ¶ added in v0.1.0
type Payment ¶ added in v0.1.0
type Payment struct {
Id string
TenantId string
ReferenceModule string
ReferenceId string
Channel string
Method string
Amount int64
Currency string
Status string
RefundedAmount int64
ProviderToken string
AuthorizationCode string
PaymentTypeCode string
Installments int64
CardLast4 string
ReceiptNumber string
ReturnTo string
CreatedBy string
CreatedAt int64
PaidAt int64
UpdatedAt int64
Revision int64
}
func ReadOnePayment ¶ added in v0.1.0
func (*Payment) DecodeFields ¶ added in v0.1.0
func (m *Payment) DecodeFields(r model.FieldReader)
func (*Payment) EncodeFields ¶ added in v0.1.0
func (m *Payment) EncodeFields(w model.FieldWriter)
type PaymentList ¶ added in v0.1.0
type PaymentList []*Payment
func ReadAllPayment ¶ added in v0.1.0
func ReadAllPayment(qb *orm.QB) (PaymentList, error)
func (*PaymentList) Append ¶ added in v0.1.0
func (s *PaymentList) Append() model.Fielder
func (*PaymentList) DecodeFields ¶ added in v0.1.0
func (s *PaymentList) DecodeFields(_ model.FieldReader)
func (*PaymentList) EncodeFields ¶ added in v0.1.0
func (s *PaymentList) EncodeFields(_ model.FieldWriter)
func (*PaymentList) IsNil ¶ added in v0.1.0
func (s *PaymentList) IsNil() bool
func (*PaymentList) Len ¶ added in v0.1.0
func (s *PaymentList) Len() int
type PaymentStatusResult ¶ added in v0.1.0
func (*PaymentStatusResult) DecodeFields ¶ added in v0.1.0
func (m *PaymentStatusResult) DecodeFields(r model.FieldReader)
func (*PaymentStatusResult) EncodeFields ¶ added in v0.1.0
func (m *PaymentStatusResult) EncodeFields(w model.FieldWriter)
func (*PaymentStatusResult) IsNil ¶ added in v0.1.0
func (m *PaymentStatusResult) IsNil() bool
func (*PaymentStatusResult) ModelName ¶ added in v0.1.0
func (m *PaymentStatusResult) ModelName() string
func (*PaymentStatusResult) Pointers ¶ added in v0.1.0
func (m *PaymentStatusResult) Pointers() []any
func (*PaymentStatusResult) Schema ¶ added in v0.1.0
func (m *PaymentStatusResult) Schema() []model.Field
func (*PaymentStatusResult) Validate ¶ added in v0.1.0
func (m *PaymentStatusResult) Validate(action byte) error
type PaymentStatusResultList ¶ added in v0.1.0
type PaymentStatusResultList []*PaymentStatusResult
func (*PaymentStatusResultList) Append ¶ added in v0.1.0
func (s *PaymentStatusResultList) Append() model.Fielder
func (*PaymentStatusResultList) At ¶ added in v0.1.0
func (s *PaymentStatusResultList) At(i int) model.Fielder
func (*PaymentStatusResultList) DecodeFields ¶ added in v0.1.0
func (s *PaymentStatusResultList) DecodeFields(_ model.FieldReader)
func (*PaymentStatusResultList) EncodeFields ¶ added in v0.1.0
func (s *PaymentStatusResultList) EncodeFields(_ model.FieldWriter)
func (*PaymentStatusResultList) IsNil ¶ added in v0.1.0
func (s *PaymentStatusResultList) IsNil() bool
func (*PaymentStatusResultList) Len ¶ added in v0.1.0
func (s *PaymentStatusResultList) Len() int
type ReconcileOnlinePaymentsArgs ¶ added in v0.1.0
type ReconcileOnlinePaymentsArgs struct {
TenantId string
}
func (*ReconcileOnlinePaymentsArgs) DecodeFields ¶ added in v0.1.0
func (m *ReconcileOnlinePaymentsArgs) DecodeFields(r model.FieldReader)
func (*ReconcileOnlinePaymentsArgs) EncodeFields ¶ added in v0.1.0
func (m *ReconcileOnlinePaymentsArgs) EncodeFields(w model.FieldWriter)
func (*ReconcileOnlinePaymentsArgs) IsNil ¶ added in v0.1.0
func (m *ReconcileOnlinePaymentsArgs) IsNil() bool
func (*ReconcileOnlinePaymentsArgs) ModelName ¶ added in v0.1.0
func (m *ReconcileOnlinePaymentsArgs) ModelName() string
func (*ReconcileOnlinePaymentsArgs) Pointers ¶ added in v0.1.0
func (m *ReconcileOnlinePaymentsArgs) Pointers() []any
func (*ReconcileOnlinePaymentsArgs) Schema ¶ added in v0.1.0
func (m *ReconcileOnlinePaymentsArgs) Schema() []model.Field
func (*ReconcileOnlinePaymentsArgs) Validate ¶ added in v0.1.0
func (m *ReconcileOnlinePaymentsArgs) Validate(action byte) error
type ReconcileOnlinePaymentsArgsList ¶ added in v0.1.0
type ReconcileOnlinePaymentsArgsList []*ReconcileOnlinePaymentsArgs
func (*ReconcileOnlinePaymentsArgsList) Append ¶ added in v0.1.0
func (s *ReconcileOnlinePaymentsArgsList) Append() model.Fielder
func (*ReconcileOnlinePaymentsArgsList) At ¶ added in v0.1.0
func (s *ReconcileOnlinePaymentsArgsList) At(i int) model.Fielder
func (*ReconcileOnlinePaymentsArgsList) DecodeFields ¶ added in v0.1.0
func (s *ReconcileOnlinePaymentsArgsList) DecodeFields(_ model.FieldReader)
func (*ReconcileOnlinePaymentsArgsList) EncodeFields ¶ added in v0.1.0
func (s *ReconcileOnlinePaymentsArgsList) EncodeFields(_ model.FieldWriter)
func (*ReconcileOnlinePaymentsArgsList) IsNil ¶ added in v0.1.0
func (s *ReconcileOnlinePaymentsArgsList) IsNil() bool
func (*ReconcileOnlinePaymentsArgsList) Len ¶ added in v0.1.0
func (s *ReconcileOnlinePaymentsArgsList) Len() int
type ReconcileResult ¶ added in v0.1.0
type ReconcileResult struct {
Closed int64
}
func (*ReconcileResult) DecodeFields ¶ added in v0.1.0
func (m *ReconcileResult) DecodeFields(r model.FieldReader)
func (*ReconcileResult) EncodeFields ¶ added in v0.1.0
func (m *ReconcileResult) EncodeFields(w model.FieldWriter)
func (*ReconcileResult) IsNil ¶ added in v0.1.0
func (m *ReconcileResult) IsNil() bool
func (*ReconcileResult) ModelName ¶ added in v0.1.0
func (m *ReconcileResult) ModelName() string
func (*ReconcileResult) Pointers ¶ added in v0.1.0
func (m *ReconcileResult) Pointers() []any
func (*ReconcileResult) Schema ¶ added in v0.1.0
func (m *ReconcileResult) Schema() []model.Field
func (*ReconcileResult) Validate ¶ added in v0.1.0
func (m *ReconcileResult) Validate(action byte) error
type ReconcileResultList ¶ added in v0.1.0
type ReconcileResultList []*ReconcileResult
func (*ReconcileResultList) Append ¶ added in v0.1.0
func (s *ReconcileResultList) Append() model.Fielder
func (*ReconcileResultList) At ¶ added in v0.1.0
func (s *ReconcileResultList) At(i int) model.Fielder
func (*ReconcileResultList) DecodeFields ¶ added in v0.1.0
func (s *ReconcileResultList) DecodeFields(_ model.FieldReader)
func (*ReconcileResultList) EncodeFields ¶ added in v0.1.0
func (s *ReconcileResultList) EncodeFields(_ model.FieldWriter)
func (*ReconcileResultList) IsNil ¶ added in v0.1.0
func (s *ReconcileResultList) IsNil() bool
func (*ReconcileResultList) Len ¶ added in v0.1.0
func (s *ReconcileResultList) Len() int
type Refund ¶ added in v0.1.0
type Refund struct {
Id string
TenantId string
PaymentId string
Amount int64
Kind string
Method string
Reason string
AuthorizationCode string
CreatedBy string
CreatedAt int64
}
func (*Refund) DecodeFields ¶ added in v0.1.0
func (m *Refund) DecodeFields(r model.FieldReader)
func (*Refund) EncodeFields ¶ added in v0.1.0
func (m *Refund) EncodeFields(w model.FieldWriter)
type RefundList ¶ added in v0.1.0
type RefundList []*Refund
func ReadAllRefund ¶ added in v0.1.0
func ReadAllRefund(qb *orm.QB) (RefundList, error)
func (*RefundList) Append ¶ added in v0.1.0
func (s *RefundList) Append() model.Fielder
func (*RefundList) DecodeFields ¶ added in v0.1.0
func (s *RefundList) DecodeFields(_ model.FieldReader)
func (*RefundList) EncodeFields ¶ added in v0.1.0
func (s *RefundList) EncodeFields(_ model.FieldWriter)
func (*RefundList) IsNil ¶ added in v0.1.0
func (s *RefundList) IsNil() bool
func (*RefundList) Len ¶ added in v0.1.0
func (s *RefundList) Len() int
type RefundPaymentArgs ¶ added in v0.1.0
type RefundPaymentArgs struct {
TenantId string
Id string
PaymentId string
Amount int64
Reason string
Method string
}
func (*RefundPaymentArgs) DecodeFields ¶ added in v0.1.0
func (m *RefundPaymentArgs) DecodeFields(r model.FieldReader)
func (*RefundPaymentArgs) EncodeFields ¶ added in v0.1.0
func (m *RefundPaymentArgs) EncodeFields(w model.FieldWriter)
func (*RefundPaymentArgs) IsNil ¶ added in v0.1.0
func (m *RefundPaymentArgs) IsNil() bool
func (*RefundPaymentArgs) ModelName ¶ added in v0.1.0
func (m *RefundPaymentArgs) ModelName() string
func (*RefundPaymentArgs) Pointers ¶ added in v0.1.0
func (m *RefundPaymentArgs) Pointers() []any
func (*RefundPaymentArgs) Schema ¶ added in v0.1.0
func (m *RefundPaymentArgs) Schema() []model.Field
func (*RefundPaymentArgs) Validate ¶ added in v0.1.0
func (m *RefundPaymentArgs) Validate(action byte) error
type RefundPaymentArgsList ¶ added in v0.1.0
type RefundPaymentArgsList []*RefundPaymentArgs
func (*RefundPaymentArgsList) Append ¶ added in v0.1.0
func (s *RefundPaymentArgsList) Append() model.Fielder
func (*RefundPaymentArgsList) At ¶ added in v0.1.0
func (s *RefundPaymentArgsList) At(i int) model.Fielder
func (*RefundPaymentArgsList) DecodeFields ¶ added in v0.1.0
func (s *RefundPaymentArgsList) DecodeFields(_ model.FieldReader)
func (*RefundPaymentArgsList) EncodeFields ¶ added in v0.1.0
func (s *RefundPaymentArgsList) EncodeFields(_ model.FieldWriter)
func (*RefundPaymentArgsList) IsNil ¶ added in v0.1.0
func (s *RefundPaymentArgsList) IsNil() bool
func (*RefundPaymentArgsList) Len ¶ added in v0.1.0
func (s *RefundPaymentArgsList) Len() int
type StartOnlinePaymentArgs ¶ added in v0.1.0
type StartOnlinePaymentArgs struct {
TenantId string
Id string
ReferenceModule string
ReferenceId string
ReturnTo string
}
func (*StartOnlinePaymentArgs) DecodeFields ¶ added in v0.1.0
func (m *StartOnlinePaymentArgs) DecodeFields(r model.FieldReader)
func (*StartOnlinePaymentArgs) EncodeFields ¶ added in v0.1.0
func (m *StartOnlinePaymentArgs) EncodeFields(w model.FieldWriter)
func (*StartOnlinePaymentArgs) IsNil ¶ added in v0.1.0
func (m *StartOnlinePaymentArgs) IsNil() bool
func (*StartOnlinePaymentArgs) ModelName ¶ added in v0.1.0
func (m *StartOnlinePaymentArgs) ModelName() string
func (*StartOnlinePaymentArgs) Pointers ¶ added in v0.1.0
func (m *StartOnlinePaymentArgs) Pointers() []any
func (*StartOnlinePaymentArgs) Schema ¶ added in v0.1.0
func (m *StartOnlinePaymentArgs) Schema() []model.Field
func (*StartOnlinePaymentArgs) Validate ¶ added in v0.1.0
func (m *StartOnlinePaymentArgs) Validate(action byte) error
type StartOnlinePaymentArgsList ¶ added in v0.1.0
type StartOnlinePaymentArgsList []*StartOnlinePaymentArgs
func (*StartOnlinePaymentArgsList) Append ¶ added in v0.1.0
func (s *StartOnlinePaymentArgsList) Append() model.Fielder
func (*StartOnlinePaymentArgsList) At ¶ added in v0.1.0
func (s *StartOnlinePaymentArgsList) At(i int) model.Fielder
func (*StartOnlinePaymentArgsList) DecodeFields ¶ added in v0.1.0
func (s *StartOnlinePaymentArgsList) DecodeFields(_ model.FieldReader)
func (*StartOnlinePaymentArgsList) EncodeFields ¶ added in v0.1.0
func (s *StartOnlinePaymentArgsList) EncodeFields(_ model.FieldWriter)
func (*StartOnlinePaymentArgsList) IsNil ¶ added in v0.1.0
func (s *StartOnlinePaymentArgsList) IsNil() bool
func (*StartOnlinePaymentArgsList) Len ¶ added in v0.1.0
func (s *StartOnlinePaymentArgsList) Len() int
type StartOnlinePaymentResult ¶ added in v0.1.0
func (*StartOnlinePaymentResult) DecodeFields ¶ added in v0.1.0
func (m *StartOnlinePaymentResult) DecodeFields(r model.FieldReader)
func (*StartOnlinePaymentResult) EncodeFields ¶ added in v0.1.0
func (m *StartOnlinePaymentResult) EncodeFields(w model.FieldWriter)
func (*StartOnlinePaymentResult) IsNil ¶ added in v0.1.0
func (m *StartOnlinePaymentResult) IsNil() bool
func (*StartOnlinePaymentResult) ModelName ¶ added in v0.1.0
func (m *StartOnlinePaymentResult) ModelName() string
func (*StartOnlinePaymentResult) Pointers ¶ added in v0.1.0
func (m *StartOnlinePaymentResult) Pointers() []any
func (*StartOnlinePaymentResult) Schema ¶ added in v0.1.0
func (m *StartOnlinePaymentResult) Schema() []model.Field
func (*StartOnlinePaymentResult) Validate ¶ added in v0.1.0
func (m *StartOnlinePaymentResult) Validate(action byte) error
type StartOnlinePaymentResultList ¶ added in v0.1.0
type StartOnlinePaymentResultList []*StartOnlinePaymentResult
func (*StartOnlinePaymentResultList) Append ¶ added in v0.1.0
func (s *StartOnlinePaymentResultList) Append() model.Fielder
func (*StartOnlinePaymentResultList) At ¶ added in v0.1.0
func (s *StartOnlinePaymentResultList) At(i int) model.Fielder
func (*StartOnlinePaymentResultList) DecodeFields ¶ added in v0.1.0
func (s *StartOnlinePaymentResultList) DecodeFields(_ model.FieldReader)
func (*StartOnlinePaymentResultList) EncodeFields ¶ added in v0.1.0
func (s *StartOnlinePaymentResultList) EncodeFields(_ model.FieldWriter)
func (*StartOnlinePaymentResultList) IsNil ¶ added in v0.1.0
func (s *StartOnlinePaymentResultList) IsNil() bool
func (*StartOnlinePaymentResultList) Len ¶ added in v0.1.0
func (s *StartOnlinePaymentResultList) Len() int
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
Package migrate crea y actualiza el esquema de payment_manager.
|
Package migrate crea y actualiza el esquema de payment_manager. |
|
Package sandbox es una pasarela de pago en memoria que implementa paymentmanager.Gateway.
|
Package sandbox es una pasarela de pago en memoria que implementa paymentmanager.Gateway. |