All Verbs | /pago/ValidarPagosArticulo |
---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DatosBanco:
banco: Optional[str] = None
sucursal: Optional[str] = None
usuario: Optional[str] = None
terminal: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CoreRes:
tran_id: Optional[str] = None
code: Optional[str] = None
info_msg: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PagoArticulo:
id_obligacion: int = 0
monto: float = 0.0
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SolicitudPago:
id_transaccion_banco: Optional[str] = None
fecha_transaccion_banco: int = 0
hora_min_seg: int = 0
numero_documento: Optional[str] = None
id_tipo_impuesto: int = 0
pago_parcial: int = 0
anio: int = 0
pago_articulos: Optional[List[PagoArticulo]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RequestPago:
solicitud_pago: Optional[SolicitudPago] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ResultadoTransaccion:
resultado: Optional[str] = None
mensaje_resultado: Optional[str] = None
fecha_transaccion: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ResultadoPago(ResultadoTransaccion):
id_pago: int = 0
check_sum: Optional[str] = None
resultado: Optional[str] = None
mensaje_resultado: Optional[str] = None
fecha_transaccion: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ResponsePago:
pago_respuesta: Optional[ResultadoPago] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ValidarPago:
id_pago_pasarela: int = 0
estado: Optional[str] = None
reques_t__p_a_g_o: Optional[RequestPago] = None
respons_e__p_a_g_o: Optional[ResponsePago] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class AMDCValidaPagoRS(CoreRes):
lista_pagos_root: Optional[List[ValidarPago]] = None
tran_id: Optional[str] = None
code: Optional[str] = None
info_msg: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class AMDCValidaPagoRQ(DatosBanco):
numero_documento: Optional[str] = None
banco: Optional[str] = None
sucursal: Optional[str] = None
usuario: Optional[str] = None
terminal: Optional[str] = None
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /pago/ValidarPagosArticulo HTTP/1.1
Host: soluser-recaudo.sgsas.co
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<AMDCValidaPagoRQ xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Tipo.Pago">
<Banco xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</Banco>
<Sucursal xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</Sucursal>
<Terminal xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</Terminal>
<Usuario xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</Usuario>
<NumeroDocumento>String</NumeroDocumento>
</AMDCValidaPagoRQ>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <AMDCValidaPagoRS xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Tipo.Pago"> <Code xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</Code> <InfoMsg xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</InfoMsg> <TranId xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</TranId> <ListaPagosRoot xmlns:d2p1="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.Pago"> <d2p1:ValidarPago> <d2p1:Estado>String</d2p1:Estado> <d2p1:IdPagoPasarela>0</d2p1:IdPagoPasarela> <d2p1:REQUEST_PAGO> <d2p1:SolicitudPago> <d2p1:Anio>0</d2p1:Anio> <d2p1:FechaTransaccionBanco>0</d2p1:FechaTransaccionBanco> <d2p1:HoraMinSeg>0</d2p1:HoraMinSeg> <d2p1:IdTipoImpuesto>0</d2p1:IdTipoImpuesto> <d2p1:IdTransaccionBanco>String</d2p1:IdTransaccionBanco> <d2p1:NumeroDocumento>String</d2p1:NumeroDocumento> <d2p1:PagoArticulos> <d2p1:PagoArticulo> <d2p1:IdObligacion>0</d2p1:IdObligacion> <d2p1:Monto>0</d2p1:Monto> </d2p1:PagoArticulo> </d2p1:PagoArticulos> <d2p1:PagoParcial>0</d2p1:PagoParcial> </d2p1:SolicitudPago> </d2p1:REQUEST_PAGO> <d2p1:RESPONSE_PAGO> <d2p1:PagoRespuesta> <FechaTransaccion xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</FechaTransaccion> <MensajeResultado xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</MensajeResultado> <Resultado xmlns="http://schemas.datacontract.org/2004/07/AMDC.Modelo.Contexto.General">String</Resultado> <d2p1:CheckSum>String</d2p1:CheckSum> <d2p1:IdPago>0</d2p1:IdPago> </d2p1:PagoRespuesta> </d2p1:RESPONSE_PAGO> </d2p1:ValidarPago> </ListaPagosRoot> </AMDCValidaPagoRS>