...
Note |
---|
IMPORTANTE: El servicio de Aggregation es el que se usarán para las pruebas correspondientes en ambientes de QA y ST: Account + Customer en Genesys Card en Spin |
Detalle de endpoints
Table of Contents |
---|
minLevel | 1 |
---|
maxLevel | 6 |
---|
outline | false |
---|
type | list |
---|
printable | false |
---|
|
Ejemplo body:
El detalle que se muestra es el camino deseado (happy path) de los endpoints desarrollados.
El código esperado es un 200 + un body, en estos casos
Ejemplo de body - EnableToken (POST /tokens/key):
Body - Request
{
"deviceId": "15703c1c-352a-11ee-be56-0242ac120002",
"keyId": "05616256-352a-11ee-be56-0242ac120002",
"publicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCR9+qdg/HrRLzgkbphCnQpN+NscOEY8vQO/M+/U4erX3ZK9IcV9MulLyY4faIBV2LeJpeUDzemFygjz/e+as6gKjbrJ7jHldl0stpfyUv6Se5iwC2wunevURLjnyk31Af9QtJr5KGsNrtyVzNYis92LGUY64tHEVNoL6DmrD/JJwIDAQAB",
"publicKeyAlgorithm": "RSA"
}
Panel |
---|
panelIconId | atlassian-note |
---|
panelIcon | :note: |
---|
bgColor | #FFBDAD |
---|
|
Body - Response { "seed": "PGh9l4M6kfEWQPSAlB2ELD9p1GTMZ/lQSzkBg2n/lhTOsZtNh2lvhoRkCCBnsGuZgjBGPIfHFye3yi/b5YUKl+2CA673Fg66WruKTU58ywk/rZYUKXOku2NI8PliZG9P9/nrgrZ75D5SxsuUv0DIj8A0WfdYu16PLFnH4MGhD6A=" } |
Mirror
Account
Info |
---|
Consulta de bloqueos Repositorio sincronizado con Fiserv Disminuye peticiones al Proveedor |
GetAccountDetails
...
Descripción
...
Request
...
Response
...
Aggregation
Estos son los componentes que se estarán usando para la ejecución de pruebas en el proyecto:
Account Aggregation Service
Info |
---|
Incorpora los servicios de Account Mirror y Balance Mirror Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST → /v1/accounts/details
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza la consulta de bloqueos de cuenta Activa | Code Block |
---|
{
"accountNumber": "9500507060523627372"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500507060523627372",
"customerNumber": "0995000000000078206"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza la consulta de bloqueos de cuenta |
.Inactiva | Code Block |
---|
{
"accountNumber": " |
|
9500501520328494829 | Code Block |
---|
{
"accountData": {
"accountNumber": " |
|
95005015203284948299500501403742215502",
"customerNumber": " |
|
09950000000000352490995000000000080639",
"blockCode1": " |
|
MU",
"blockCode1Date": "2023-09- |
|
07 "blockCode2": "M",blockCode2Date2023-08-11"accountMakerDateOfBirth":"",
availableCredit0,
"userAmounts9": 0, "userAmounts10": 0,
"userAmounts7": 0
}
}2 | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. |
4 3 Bad Request: Request con campos no válidos. |
5 Descripción | Request | Response | HTTP Codes |
Realiza bloqueos/desbloqueo de cuenta.13 Internal Server Error: Servicios no disponibles. |
SetAccountBlock
Realiza la consulta de bloqueos de cuenta Expirada | |
blockCodeaccountNumber": "9500501566817108768" |
|
,"blockCodeIndicator":1, foreignUse0,"functionCode":"U",9500501520328494829} Code Block |
{"functionCode":"B",accountNumber9500501520328494829,"blockCode1Local":"M",
"localOrganization": 9502 OK4 Bad Request400: Request con campos no válidos. |
5 Internal Server ErrorDescripción | Request | Response | HTTP Codes |
Sincroniza el mirror de account con la información de Fiserv.401: Apy Key no válida. 500: Servicios no disponibles. |
SynchronizeMirrorAccount
0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza la consulta de bloqueos de cuenta Bloqueada | Code Block |
---|
{
"accountNumber": " |
|
9500501520328494829 | Code Block |
---|
{
"accountData": {
|
|
"accountNumber":"9500501520328494829", customerNumber0995000000000035249"blockCode1":"M", blockCode1Date2023-09-07"blockCode2":"M", blockCode2Date2023-08-11
"accountMakerDateOfBirth":"",availableCredit0,
"userAmounts9": 0, "userAmounts10": 0,
"userAmounts7": 0
}
}2 | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. |
4 3 Bad Request: Request con campos no válidos. |
5 13 Internal Server Error: Servicios no disponibles. |
Balance
Info |
---|
Consulta de balance Repositorio sincronizado con Fiserv Disminuye peticiones al Proveedor |
GetAccountBalance
POST → /v1/accounts/blocks
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza |
la consulta de balance de cuenta.bloqueos/desbloqueo de cuenta - Bloquear (foreignUse= 0) | |
accountNumber9500501520328494829"
} Code Block |
{accountOrCardNumber"9500501520328494829"currentBalance998176210159availableCreditLimit32237425576994724frozenBalance260002 OK: Solicitud exitosa.4 Bad Request: Request con campos no válidos.
5 Internal Server Error: Servicios no disponibles.
SynchronizeMirrorBalance
Descripción | Request | Response | HTTP Codes |
---|
Sincroniza el mirror de balance con la información de Fiserv. | accountNumber9500501520328494829} Code Block |
{accountOrCardNumberaccountNumber": "9500501520328494829",
" |
|
currentBalance998176210159"availableCreditLimit":32237425576994724, frozenBalance260002 OK4 Bad Request400: Request con campos no válidos. |
5 Internal Server Error: Servicios no Descripción | Request | Response | HTTP Codes |
Realiza una transferencia .401: Apy Key no válida. 500: Servicios no disponibles. |
TransferBalance
0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza bloqueos/desbloqueo de cuenta - Bloquear (foreignUse= 1) | |
transactionData{
"transactionAmount": 1 actionCode"8012" authorizationCode"311S3q"
effectiveDate2023-06-21
descriptionP2P",paidConcepttestmemoPostedIndicatorqqqsuppressMonetaryTransaction"qqq",
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza bloqueos/desbloqueo de cuenta - Desbloquear | |
n1n2ByPassqqq
identifier"S_IN",
box"3"
crPlaza10MON crStore50WHN",keyTrackingKEYTRACKING0123456789senderAccountsenderAccount012345beneficiaryAccountbeneficiaryAccount1counterpartInstitution"aaaaa",
"operatingInstitution": "bbbbb",
"frcUprkBeneficiary": "frcUprkBenefi",
"orderingFrcUprk": "orderingFrcUp",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "recipientName01234567890123456",
"orderingName": "orderingName012345678901234567",
"paymentSourceId": "paymentSourceId012345"
},
"xTransactionId": "123", | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Para éste endpoint se requieren los siguientes valores:
blockCode: Código de bloqueo proporcionado por Spin.
blockCodeIndicator: Indica el código de bloqueo a usar: 0-1 primer código de bloqueo, 2 segundo código de bloqueo.
foreignUse: 0
functionCode: indica si se va bloquear (“B“) o desbloquear (“U“)
accountNumber: código de cuenta.
...
POST → /v1/accounts/syncs
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Sincroniza el mirror de account con la información de Fiserv - Número de cuenta Activa | Code Block |
---|
{
"accountNumber": "9500503048928881284"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": " |
|
9500501545918394337
} Code Block |
{historyDate2023-09-12"historyTime "accountMakerDateOfBirth": " |
|
111208"transactionData":{transactionCode"8012""transactionDescription": "P2P RECIEVER", currentBalance"2122495"openToBuy"2122548"2 | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles.POST → /v1/balances | 0 OK: Solicitud exitosa. |
4 3 Bad Request: Request con campos no válidos. |
5 Descripción | Request | Response | HTTP Codes |
Realiza una transferencia P2P.13 Internal Server Error: Servicios no disponibles. |
TransferPeerToPeer
Sincroniza el mirror de account con la información de Fiserv - Número de cuenta Inactiva | |
fromaccountNumber": "9500501403742215502"
} |
| |
accountNumber"9500508496924050930",actionCode8008transactionDescriptionP2P_TRANSFER_SOURCEdescriptionP2P_TRANSFER_SOURCEauthorizationCode1234"
}"to":{accountNumber9500502030236002994actionCode8012transactionDescriptionaccountMakerDateOfBirth": " |
|
P2P_TRANSFER_TARGET","description | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles.POST → /v1/balances | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de account con la información de Fiserv - Número de cuenta Expirada | Code Block |
---|
{
"accountNumber": " |
|
P2P_TRANSFER_SOURCE",authorizationCode"1234"},effectiveDate2022-01-30
"transactionAmount":100,deviceabcfghjfghjklghjkfghjk5678956789ipaccountMakerDateOfBirth": " |
|
198.162.123.148"latitude":123.56565656,
longitude-23565656"xTransactionId":"123"} Code Block |
{
effectiveDate"2022-01-30",
"transactionAmount": "100""actionOutputArea":{actionData[{ "authorizationCode | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles.POST → /v1/balances | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de account con la información de Fiserv - Número de cuenta Bloqueada | Code Block |
---|
{
"accountNumber": " |
|
1234, accountNumber"9500508496924050930",transactionDescriptionP2P SENDERfeeAmount0transactionCode 8008,
"currentBalance": -5988391creditLimit0,
"openToBuy": 598649100authorizationNumber507925"
}{ "authorizationCode"accountMakerDateOfBirth": " |
|
1234, "accountNumber": "9500502030236002994",
"transactionDescription": "P2P RECIEVER",
"feeAmount": "0",
"transactionCode": 8012,
"currentBalance": -169434,
"creditLimit": 0,
"openToBuy": 17133400,
"authorizationNumber": "332272"
}
]
}
}2 OK: Solicitud exitosa.
4 | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles.POST → /v1/balances | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
POST → /v1/balances
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza la consulta de balance de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountOrCardNumber": "9500501520328494829",
"currentBalance": 998176209259,
"availableCreditLimit": 1823760996,
"frozenBalance": 26000.0
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. |
5 13 Internal Server Error: Servicios no disponibles. |
FrozenBalanceTransfer
POST → /v1/balances/syncs
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia QR.GRPC Codes |
---|
Sincroniza el mirror de balance con la información de Fiserv - Número de cuenta Activa | |
transactionData {
transactionAmount: 20,actionCode8038authorizationCode"Q1er44"effectiveDate"2022-08-24",
"description": "QR code test - normal hours",
"paidConcept": "Hello",
"memoPostedIndicator": " ",
"suppressMonetaryTransaction": "Y",
"n1n2ByPass": "N",
"identifier": 0,
"box": "1", | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de balance con la información de Fiserv - Número de cuenta Inactiva | Code Block |
---|
{
"accountNumber": "9500501403742215502"
} |
| Code Block |
---|
{
"accountOrCardNumber": "9500501403742215502"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de balance con la información de Fiserv - Número de cuenta Expirada | Code Block |
---|
{
"accountNumber": "9500508152383529456"
} |
| |
crPlaza10MONcrStore"50WHN"keyTracking"Hello",
"beneficiaryAccount": "Hello",
"senderAccount": "Hello", | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Sincroniza el mirror de balance con la información de Fiserv - Número de cuenta Bloqueada | Code Block |
---|
{
"accountNumber": "9500508176491773011"
} |
| |
counterpartInstitutionHello,
"operatingInstitution": "Hello",
"frcUprkBeneficiary": "Hello" | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
PUT → /v1/balances/transfers
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza una transferencia - Número de cuenta Activa | Code Block |
---|
{
"transactionData": {
"transactionAmount": 1000,
" |
|
orderingFrcUprkHellodevice123456789-123456789-123456789-12ip198.162.200.200latitude-109.699longitude23.062recipientNameHelloorderingNamesuppressMonetaryTransaction": " |
|
HellopaymentSourceIdbf0469d7-b507-44d6-af7d-d4edea6340f1"}, xTransactionId123accountNumber9500508020127353147} Code Block |
{historyDate2023-09-12historyTime111311transactionData{"KEYTRACKING0123456789",
" |
|
transactionCode8038transactionDescriptionCASHOUT WITH QR-CODE(FREE BAL)currentBalancecounterpartInstitution": " |
|
-1382946openToBuy1382326}}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | Card
Info |
---|
Incorpora los endpoints de Card Mirror Sincronización de datos con el Mirror Expone endpoints a través de un API REST |
POST → /v1/cards/embossers/details
Descripción | Request | Response | HTTP Codes |
---|
Obtener cuenta mediante Pantoken | Code Block |
{
"panToken0004217470595215803cardSequence2147483647foreignUse 0} Code Block |
{
"postToAccount"123456789-123456789-123456789-12",
"ip": " |
|
9500508261544464147 blockCodeZ cardNumber***************0252recipientName01234567890123456",
|
|
"currentCardActivationNorderingName012345678901234567",
|
|
dateBlock2023-09-04}200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | PUT → /v1/cards/embossers/block
Descripción | Request | Response | HTTP Codes |
---|
Bloqueo de tarjetas | Code Block |
{
"blockCode": "Z },
"xTransactionId": "123",
"accountNumber": "9500503048928881284",
"operationType": "D"
} |
| Code Block |
---|
{
"historyDate": "2023-09-18",
" |
|
panToken0004217470885923553cardSequence 1,functionCodeB//Bparabloquear-uDesbloquear
} Code Block |
{Descripción | Request | Response | HTTP Codes |
Realiza la consulta de bloqueos de cuenta. "currentBalance": "-10000",
"openToBuy": "13000"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
Gateway
Account Adapter
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de account y balance. |
GetAccountDetails
0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza una transferencia - Número de cuenta Inactiva | |
accountNumber"9500501520328494829"
} Code Block |
{accountData{accountNumber9500501520328494829customerNumber0995000000000035249blockCode1MblockCode1Date2023-09-07blockCode2MblockCode2Date2023-08-11accountMakerDateOfBirthsuppressMonetaryTransaction": "qqq",
" |
|
availableCredit0userAmounts90userAmounts100userAmounts70}
}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | SetAccountBlock
Descripción | Request | Response | HTTP Codes |
---|
Realiza bloqueos/desbloqueo de cuenta. | Code Block |
---|
{
"blockCode": "",
"blockCodeIndicator": 1,
"foreignUse": 0,
"functionCode": "U",
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"functionCode": "B",
"accountNumber": "9500501520328494829",
"blockCode1Local": "M",
"localOrganization": 950
} |
| 2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. |
TransferBalance
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia . | Code Block |
{
"transactionData": {
"transactionAmount": 1 "crStore": "50WHN",
"keyTracking": "KEYTRACKING0123456789",
"senderAccount": "senderAccount012345",
"beneficiaryAccount": "beneficiaryAccount1",
"counterpartInstitution": "aaaaa",
"operatingInstitution": "bbbbb",
"frcUprkBeneficiary": "frcUprkBenefi",
"orderingFrcUprk": "orderingFrcUp",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "recipientName01234567890123456",
" |
|
actionCode8012orderingName012345678901234567",
" |
|
authorizationCode311S3q,effectiveDate2023-06-21
descriptionP2P
paidConcepttest",memoPostedIndicatorqqqsuppressMonetaryTransactionqqqn1n2ByPass"qqq",identifierS_INbox3,"crPlaza": "10MON", | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza una transferencia - Número de cuenta Expirada | Code Block |
---|
{
"transactionData": {
" |
|
crStore"50WHN"keyTrackingKEYTRACKING0123456789senderAccountsenderAccount012345beneficiaryAccountbeneficiaryAccount1counterpartInstitutionaaaaaoperatingInstitutionbbbbbfrcUprkBeneficiaryfrcUprkBenefiorderingFrcUprksuppressMonetaryTransaction": " |
|
orderingFrcUpdevice123456789-123456789-123456789-12ip198.162.200.200latitude-109.699longitude23.062recipientNamerecipientName01234567890123456orderingNameorderingName012345678901234567KEYTRACKING0123456789",
" |
|
paymentSourceIdpaymentSourceId012345 },xTransactionId123accountNumbercounterpartInstitution": " |
|
9500501545918394337} Code Block |
{historyDate2023-09-12historyTime111208transactionData{transactionCode8012123456789-123456789-123456789-12",
" |
|
transactionDescriptionP2P RECIEVERcurrentBalance"2122495"openToBuy"2122548"}}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | TransferPeerToPeer
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia P2P. | Code Block |
{
from{"recipientName01234567890123456",
" |
|
accountNumber9500508496924050930orderingName012345678901234567",
" |
|
actionCode8008,transactionDescriptionP2P_TRANSFER_SOURCE
descriptionP2P_TRANSFER_SOURCE
authorizationCode1234
,
"to": accountNumber9500502030236002994actionCode8012transactionDescription"P2P_TRANSFER_TARGET","description":"P2P_TRANSFER_SOURCE",
authorizationCode1234},effectiveDate202201-30
"transactionAmount":100,deviceabcfghjfghjklghjkfghjk5678956789,"ip": "198.162.123.148", | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
Realiza una transferencia - Número de cuenta Bloqueada | Code Block |
---|
{
"transactionData": {
" |
|
latitude123.56565656longitude-23.565656xTransactionId123} Code Block |
{20220130transactionAmount100actionOutputArea{actionData["qqq",
"suppressMonetaryTransaction": "qqq",
|
|
{authorizationCode1234accountNumber9500508496924050930
transactionDescriptionP2P SENDER feeAmount0
transactionCode8008
currentBalance-5988391,
creditLimit0 openToBuy598649100,
authorizationNumber507925 }"orderingFrcUprk": "orderingFrcUp",
"device": |
|
{"123456789-123456789-123456789-12",
"ip": "198.162.200.200",
" |
|
authorizationCode"1234",-109.699,
"longitude": 23.062,
" |
|
accountNumber9500502030236002994recipientName01234567890123456", |
|
transactionDescriptionP2P RECIEVERorderingName012345678901234567",
|
|
feeAmount0, transactionCode8012 "accountNumber": "9500508176491773011",
" |
|
currentBalance-169434, creditLimit0"2023-09-18",
"historyTime": "164818",
" |
|
openToBuy17133400,authorizationNumber332272}]2 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. |
4 3 Bad Request: Request con campos no válidos. |
5 13 Internal Server Error: Servicios no disponibles. |
...
PUT → /v1/balances/transfers-p2p
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza una transferencia |
QRtransactionDatatransactionAmount20"9500508496924050930",
"actionCode": " |
|
8038authorizationCodetransactionDescription": " |
|
Q1er44effectiveDate2022-08-24descriptionauthorizationCode": "1234" |
|
QRcodetest - normal hours",
paidConcept"Hello",memoPostedIndicator suppressMonetaryTransactionYn1n2ByPasstransactionDescription": " |
|
Nidentifier0box1, "crPlaza": "10MON"crStore50WHNkeyTracking"Hello"beneficiaryAccountHelloabcfghjfghjklghjkfghjk5678956789",
" |
|
senderAccountHellocounterpartInstitution"Hello"operatingInstitution"Hello"frcUprkBeneficiaryHello, "orderingFrcUprk | Code Block |
---|
{
"effectiveDate": " |
|
Hello "device123456789-123456789-123456789-12 "ip"198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "Hello",
"orderingName": "Hello",
"paymentSourceId": "bf0469d7-b507-44d6-af7d-d4edea6340f1"
},
"xTransactionId": "123",
"accountNumber": "9500508020127353147"
} Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111311",
"transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382326"
}
} |
| 2 OK: Solicitud exitosa.
4 {
"actionData": [
{
"authorizationCode": "1234",
"accountNumber": "9500508496924050930",
"transactionDescription": "P2P SENDER",
"transactionCode": 8008,
"currentBalance": -5988391.0,
"openToBuy": 5.987391E8,
"authorizationNumber": "205229"
},
{
"authorizationCode": "1234",
"accountNumber": "9500502030236002994",
"transactionDescription": "P2P RECIEVER",
"transactionCode": 8012,
"currentBalance": -169434.0,
"openToBuy": 1.70434E7,
"authorizationNumber": "923589"
}
]
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. |
5 13 Internal Server Error: Servicios no disponibles. |
...
PUT → /v1/balances/transfers-qr
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza |
la consulta de balance de cuentaaccountNumber9500501520328494829
} Code Block |
{accountOrCardNumber9500501520328494829currentBalance998176210159availableCreditLimit32237425576994724frozenBalance 26000
}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | Customer Adapter
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de customer. Este componente se desarrolló para desacoplar los procesos core de Spin y el proveedor financiero para lograr una mayor escalabilidad. |
CreateCustomer
Descripción | Request | Response | HTTP Codes |
---|
Creación del cliente | Code Block |
{ "QR code test - normal hours",
"paidConcept": "Hello",
"memoPostedIndicator": " ",
"suppressMonetaryTransaction": "Y",
" |
|
logo50address"Ciruelo"houseNumber123externalNumber1007colonyResidencialcityVilla de AlvarezstateCOLpostalCode28980dateOfBirthcounterpartInstitution": " |
|
1994-05-06stateOfBirthColimaemaillmedina@palo-it.comfirstNameJudithlastNameMedina123456789-123456789-123456789-12",
" |
|
maternalLastNameRuizmobilePhoneNumber"3121163582"identificationNumber"4152556987415113698"ine1234117890099occupationTestergenderCode1",bf0469d7-b507-44d6-af7d-d4edea6340f1"
},
" |
|
user41
identificationNumberFlag2Descripción | Request | Response | HTTP Codes |
---|
Actualizar cliente | Code Block |
{
"email": "lmedina@palo-it.com",
"numberType": 1,
"customerNumber": "0995000000000077863",
"address": "Ciruelo",
"dateOfBirth": "1994-05-06",
"city": "Villa de Alvarez",
"countryCode": "MEX",
"county": "Colima",
"colony": "ADOLFO LOPEZ MATEOS",
"externalNumber": "1007",
"firstName": "Victoria",
"genderCode": 2,
"houseNumber": "1232 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | UpdateCustomer
Code Block |
---|
{
"historyDate": "2023-09-08",
"historyTime": "122732",
"transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382486"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Customer Aggregation service
Info |
---|
Incorpora los endpoints de Customer Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST → /customers
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Registro del cliente en la el proveedor de clientes. | Code Block |
---|
{
"logo": "60",
" |
|
ine1234117890099lastNameVelascomaritalStatus0maternalLastNameMedinamiddleNameValeriamobilePhoneIndicator1mobilePhoneNumber31211635821occupationNURSEownOrRentResidenceFlag0postalCode54070stateOfBirthDF
}2 OK: Solicitud exitosa. 4 Bad Request: Request con campos no válidos. 5 Internal Server Error: Servicios no disponibles. | LinkAccountToCustomer
Descripción | Request | Response | HTTP Codes |
---|
Vincular cuenta al cliente | Code Block |
{accountNumber9500505675946730065alternateCustomermaternalLastName": "Ruiz",
|
|
{
expirationDate2023-08-22"
},customerNumber0995000000000075954"qualification "ine": "1234117890099",
"occupation": " |
|
2customerTypeIndicator0,"foreignUseIndicator "identificationNumberFlag": "2"
} |
| Code Block |
---|
{
"customerNumber": |
|
0
}2 | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | 0 OK: Solicitud exitosa. |
4 3 Bad Request: Request con campos no válidos. |
5 13 Internal Server Error: Servicios no disponibles. |
Card Gateway
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de card. |
POST → /v1/cards/embosser
...
Descripción
...
Request
...
Response
...
HTTP Codes
POST → /v1/cards/embosser/details
...
Descripción
...
Request
...
Response
...
HTTP Codes
...
Obtener cuenta mediante Pantoken
...
PUT → /customers
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Actualización de los datos del cliente en el proveedor de clientes. | Code Block |
---|
{
"email": "lmedina@palo-it.com",
" |
|
cardSequence2147483647 "foreignUse":0} Code Block |
{ postToAccount9500508261544464147 blockCodeZ "cardNumber***************0252",
"currentCardActivationN "dateBlock2023-09-04
}200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | POST → /v1/cards/embosser/block
Descripción | Request | Response | HTTP Codes |
---|
Bloqueo de tarjetas | Code Block |
{blockCodeZpanToken0004217470885923553cardSequence1functionCodeB //B para bloquear - u Desbloquear
} | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | Aggregation
Estos son los componentes que se estarán usando para la ejecución de pruebas en el proyecto:
Account Aggregation Service
Info |
---|
Incorpora los servicios de Account Mirror y Balance Mirror Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST → /v1/accounts/details
Descripción | Request | Response | HTTP Codes |
---|
Realiza la consulta de bloqueos de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-06",
"blockCode2": "M",
"blockCode2Date": "2023-08-11"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/accounts/blocks
Descripción | Request | Response | HTTP Codes |
---|
Realiza bloqueos/desbloqueo de cuenta. | Code Block |
---|
{
"blockCode": "",
"blockCodeIndicator": 1,
"foreignUse": 0,
"functionCode": "U",
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"functionCode": "U",
"accountNumber": "9500501520328494829",
"localOrganization": 950
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/accounts/syncs
Descripción | Request | Response | HTTP Codes |
---|
Sincroniza el mirror de account con la información de Fiserv. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-06",
"blockCode2": "M",
"blockCode2Date": "2023-08-11"
}
},
"genderCode": 2,
"houseNumber": "123",
"ine": "1234117890099",
"lastName": "Velasco",
"maritalStatus": 0,
"maternalLastName": "Medina",
"middleName": "Rosa",
"mobilePhoneIndicator": 1,
"mobilePhoneNumber": "31211635899",
"occupation": "NURSE",
"ownOrRentResidenceFlag": 0,
"postalCode": 54070,
"stateOfBirth": "DF"
} |
| Code Block |
---|
{
"outputArea": {
"customerNumber": "0995000000000077863",
"accountNumber": "0995000000000077863",
"responseCode": "",
"level": "",
"transactionAmount": 0,
"countryLimit": {
"dailyLimitLoad": 0,
"monthlyLimitLoad": 0,
"dailyLimitCash": 0,
"monthlyLimitCash": 0,
"limitForDepositTransactions": 0
},
"accountLimit": {
"accountDailyAmountLoad": 0,
"accountMonthlyAmountLoad": 0,
"accountDailyAmountCash": 0,
"accountMonthlyAmountCash": 0
}
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/balances | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
POST → /
...
customers/
...
account
Descripción | Request | Response | HTTP Codes | GRPC Codes |
---|
Realiza la consulta de balance de cuentaVinculación del cliente en la cuenta de Spin. | Code Block |
---|
{
"accountNumber": " |
|
9500501520328494829} Code Block |
{
"accountOrCardNumber9500501520328494829 currentBalance998176209259,
"availableCreditLimit"1",
"customerTypeIndicator": |
|
1823760996 "frozenBalance26000.0,
"alternateCustomer": {
"expirationDate": "2023/12/30"
}
} |
| Code Block |
---|
{
"customerNumber": "0995000000000045697",
"accountNumber": "1650"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
...
0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Card Aggregation service
Info |
---|
Incorpora los endpoints de Card Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST /cards/embosser/details
Descripción | Request | Response | HTTP Codes |
---|
Sincroniza el mirror de balance con la información de Fiserv.Obtener cuenta mediante Pantoken | Code Block |
---|
{
"panToken": "0004217470595215803",
" |
|
accountNumbercardSequence": 2147483647,
" |
|
9500501520328494829accountOrCardNumber9500501520328494829currentBalance998176209259availableCreditLimit1823760996"frozenBalance"currentCardActivation": "N",
"dateBlock": |
|
26000.0 | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT
...
/
...
cards/
...
account
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia .Vinculación de tarjetas a cuenta | |
transactionDatacustomerOrAccountNumber": |
|
{
"transactionAmount": 1 actionCode8012
authorizationCode"311S3q",
effectiveDatecustomerOrAccountNumber": " |
|
2023-06-21 descriptionP2P "paidConcept": "test",
"memoPostedIndicator": "qqq",
"suppressMonetaryTransaction": "qqq",
"n1n2ByPass": "qqq", | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST /cards/account
Descripción | Request | Response | HTTP Codes |
---|
Recuperación del numero de cuenta | Code Block |
---|
{
"cardNumber": "000123456ID5IXX1234",
}
|
| |
identifierS_IN,
"box": "3",
"crPlaza": "10MON",
"crStore": "50WHN",
"keyTracking": "KEYTRACKING0123456789",
"senderAccount": "senderAccount012345",
"beneficiaryAccount": "beneficiaryAccount1",
"counterpartInstitution": "aaaaa",
"operatingInstitution": "bbbbb",
"frcUprkBeneficiary": "frcUprkBenefi",
"orderingFrcUprk": "orderingFrcUp",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "recipientName01234567890123456",
"orderingName": "orderingName012345678901234567",
"paymentSourceId": "paymentSourceId012345"
},
"xTransactionId": "123",
"accountNumber": "9500501545918394337"
} Code Block |
---|
{
"historyDate": "2023-09-08",
"historyTime": "122250",
"transactionData": {
"transactionCode": "8012",
"transactionDescription": "P2P RECIEVER",
"currentBalance": "-2122495",
"openToBuy": "2122546"
}
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | PUT → /v1/balances/transfers-p2p
Descripción | Request | Response | HTTP Codes |
---|
Realiza una transferencia P2P. | Code Block |
{
"from": {
"accountNumber": "9500508496924050930 | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
Info |
---|
El cardNumber debe tener tres ceros a la izquierda para completar el tamaño de 19 dígitos solicitado por el operador bancario. |
Image Added
PUT /cards/activation [Equipo de Spin]
Descripción | Request | Response | HTTP Codes |
---|
Activación de tarjetas | Code Block |
---|
{
"organizationNumber": 999,
"cardNumber": "000123456ID5IXX1234",
"serviceType": "A",
"userData": "string"
} |
| Code Block |
---|
{
"organizationNumber": 999,
"logo": 1,
"cardNumber": "000123456ID5IXX1234",
"serviceType": "A",
"numberCardsActivated": 1,
"foreignOrg": 1,
"numberForeignCardsActivated": 0
}
|
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT /cards/embosser/block
Descripción | Request | Response | HTTP Codes |
---|
Bloqueo de tarjetas | Code Block |
---|
{
"blockCode": "Z",
"panToken": "0004217470885923553",
"cardSequence": 1,
"functionCode": "B" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
...
Mirror
Account
Info |
---|
Consulta de bloqueos Repositorio sincronizado con Fiserv Disminuye peticiones al Proveedor |
GetAccountDetails
Descripción | Request | Response | GRPC Codes |
---|
Realiza la consulta de bloqueos de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-07",
"blockCode2": "M",
"blockCode2Date": "2023-08-11",
" |
|
actionCodeaccountMakerDateOfBirth": " |
|
8008transactionDescription"P2P_TRANSFER_SOURCE"description"P2P_TRANSFER_SOURCE"authorizationCode"1234"
},to{ "accountNumber | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
SetAccountBlock
Descripción | Request | Response | GRPC Codes |
---|
Realiza bloqueos/desbloqueo de cuenta. | Code Block |
---|
{
"blockCode": " |
|
9500502030236002994
actionCode"8012"
transactionDescription"P2P_TRANSFER_TARGET" descriptionP2P_TRANSFER_SOURCE
authorizationCode1234 }, effectiveDate2022-01-30
transactionAmount100 deviceabcfghjfghjklghjkfghjk5678956789
ip "198.162.123.148",
"latitude": 123.56565656,
"longitude": -23.565656, | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
SynchronizeMirrorAccount
Descripción | Request | Response | GRPC Codes |
---|
Sincroniza el mirror de account con la información de Fiserv. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountData": {
" |
|
xTransactionId123
} Code Block |
{
"effectiveDate2022-01-30 "transactionAmount100 "actionOutputArea{
"actionData": [
{
"authorizationCode"2023-09-07",
"blockCode2": " |
|
1234 "accountNumber9500508496924050930
"transactionDescription
"accountMakerDateOfBirth": " |
|
P2P SENDER "transactionCode8008
"currentBalance-5988391. "openToBuy": 5.987391E8,
"authorizationNumber": "205229"
},
{
"authorizationCode": "1234",
"accountNumber": "9500502030236002994",
"transactionDescription": "P2P RECIEVER",
"transactionCode": 8012,
"currentBalance": -169434.0,
"openToBuy": 1.70434E7,
"authorizationNumber": "923589"
}
]
}
}200: Solicitud exitosa.
400: 500: "userAmounts10": 0,
"userAmounts7": 0
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. |
401: Apy Key no válida.
13 Internal Server Error: Servicios no disponibles. |
...
...
Balance
Info |
---|
Consulta de balance Repositorio sincronizado con Fiserv Disminuye peticiones al Proveedor |
GetAccountBalance
Descripción | Request | Response |
---|
HTTP una transferencia QRla consulta de balance de cuenta. | |
transactionDataaccountNumber": "9500501520328494829"
} |
| |
transactionAmount20
actionCode"8038"
authorizationCode"Q1er44"
effectiveDate"2022-08-24",
"description": "QR code test - normal hours",
"paidConcept": "Hello",
"memoPostedIndicator": " ",
"suppressMonetaryTransaction": "Y",
"n1n2ByPass": "N", | 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
SynchronizeMirrorBalance
Descripción | Request | Response | GRPC Codes |
---|
Sincroniza el mirror de balance con la información de Fiserv. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountOrCardNumber": "9500501520328494829",
"currentBalance": 998176210159,
"availableCreditLimit": 32237425576994724,
"frozenBalance": 26000
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
TransferBalance
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia . | Code Block |
---|
{
"transactionData": {
" |
|
identifier0box1crPlaza10MONcrStore50WHNkeyTrackingHellobeneficiaryAccountHellosenderAccountHellocounterpartInstitutionsuppressMonetaryTransaction": " |
|
HellooperatingInstitutionHellofrcUprkBeneficiaryHelloorderingFrcUprkHellodevice123456789-123456789-123456789-12ip198.162.200.200latitude-109.699"KEYTRACKING0123456789",
" |
|
longitude23.062recipientNameHelloorderingNamecounterpartInstitution": " |
|
HellopaymentSourceIdbf0469d7-b507-44d6-af7d-d4edea6340f1"}, xTransactionId123accountNumber9500508020127353147
} Code Block |
{
"historyDate20230908 historyTime122732 "transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382486"
}
}200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. | Customer Aggregation service
Info |
---|
Incorpora los endpoints de Customer Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST → /customers
...
Descripción
...
Request
...
Response
...
HTTP Codes
...
Registro del cliente en la el proveedor de clientes.
...
200: Solicitud exitosa.
400: Request con campos no válidos.
401: Apy Key no válida.
500: Servicios no disponibles.
PUT → /customers
...
Descripción
...
Request
...
Response
...
HTTP Codes
...
Actualización de los datos del cliente en el proveedor de clientes.
...
200: Solicitud exitosa.
400: Request con campos no válidos.
401: Apy Key no válida.
500: Servicios no disponibles.
POST → /customers/account
Descripción | Request | Response | HTTP Codes |
---|
Vinculación del cliente en la cuenta de Spin. | "latitude": -109.699,
"longitude": 23.062,
"recipientName": "recipientName01234567890123456",
"orderingName": "orderingName012345678901234567",
"paymentSourceId": "paymentSourceId012345",
"operationType": "W"
},
"xTransactionId": "123",
"accountNumber": "9500501545918394337"
} |
| Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111208",
"transactionData": {
"transactionCode": "8012",
"transactionDescription": "P2P RECIEVER",
"currentBalance": "-2122495",
"openToBuy": "2122548"
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
TransferPeerToPeer
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia P2P. | Code Block |
---|
{
"from": {
"accountNumber": "9500508496924050930",
"actionCode": "8008",
"transactionDescription": "P2P_TRANSFER_SOURCE",
"description": "P2P_TRANSFER_SOURCE",
"authorizationCode": "1234"
},
"to": {
"accountNumber": "9500502030236002994",
"actionCode": "8012",
"transactionDescription": "P2P_TRANSFER_TARGET",
"description": "P2P_TRANSFER_SOURCE",
"authorizationCode": "1234"
},
"effectiveDate": "2022-01-30",
"transactionAmount": 100,
"device": "abcfghjfghjklghjkfghjk5678956789",
"ip": "198.162.123.148",
"latitude": 123.56565656,
"longitude": -23.565656,
"xTransactionId": "123"
} |
| Code Block |
---|
{
"effectiveDate": "2022-01-30",
"transactionAmount": "100",
"actionOutputArea": {
"actionData": [
{
"authorizationCode": "1234",
"accountNumber": "9500508496924050930",
"transactionDescription": "P2P SENDER",
"feeAmount": "0",
"transactionCode": 8008,
"currentBalance": -5988391,
"creditLimit": 0,
"openToBuy": 598649100,
"authorizationNumber": "507925"
},
{
"authorizationCode": "1234",
"accountNumber": "9500502030236002994",
"transactionDescription": "P2P RECIEVER",
"feeAmount": "0",
"transactionCode": 8012,
"currentBalance": -169434,
"creditLimit": 0,
"openToBuy": 17133400,
"authorizationNumber": "332272"
}
]
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
FrozenBalanceTransfer
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia QR. | Code Block |
---|
{
"transactionData": {
"transactionAmount": 20,
"actionCode": "8038",
"authorizationCode": "Q1er44",
"effectiveDate": "2022-08-24",
"description": "QR code test - normal hours",
"paidConcept": "Hello",
"memoPostedIndicator": " ",
"suppressMonetaryTransaction": "Y",
"n1n2ByPass": "N",
"identifier": 0,
"box": "1",
"crPlaza": "10MON",
"crStore": "50WHN",
"keyTracking": "Hello",
"beneficiaryAccount": "Hello",
"senderAccount": "Hello",
"counterpartInstitution": "Hello",
"operatingInstitution": "Hello",
"frcUprkBeneficiary": "Hello",
"orderingFrcUprk": "Hello",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "Hello",
"orderingName": "Hello",
"paymentSourceId": "bf0469d7-b507-44d6-af7d-d4edea6340f1"
},
"xTransactionId": "123",
"accountNumber": "9500508020127353147"
} |
| Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111311",
"transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382326"
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Card
Info |
---|
Incorpora los endpoints de Card Mirror Sincronización de datos con el Mirror Expone endpoints a través de un API REST |
POST → /v1/cards/embossers/details
Descripción | Request | Response | HTTP Codes |
---|
Obtener cuenta mediante Pantoken | Code Block |
---|
{
"panToken": "0004217470595215803",
"cardSequence": 2147483647,
"foreignUse": 0
} |
| Code Block |
---|
{
"postToAccount": "9500508261544464147",
"blockCode": "Z",
"cardNumber": "***************0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT → /v1/cards/embossers/block
Descripción | Request | Response | HTTP Codes |
---|
Bloqueo de tarjetas | Code Block |
---|
{
"blockCode": "Z",
"panToken": "0004217470885923553",
"cardSequence": 1,
"functionCode": "B" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
...
Gateway
Account Adapter
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de account y balance. |
GetAccountDetails
Descripción | Request | Response | GRPC Codes |
---|
Realiza la consulta de bloqueos de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountData": {
"accountNumber": "9500501520328494829",
"customerNumber": "0995000000000035249",
"blockCode1": "M",
"blockCode1Date": "2023-09-07",
"blockCode2": "M",
"blockCode2Date": "2023-08-11",
"accountMakerDateOfBirth": "",
"availableCredit": 0,
"userAmounts9": 0,
"userAmounts10": 0,
"userAmounts7": 0
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
SetAccountBlock
Descripción | Request | Response | GRPC Codes |
---|
Realiza bloqueos/desbloqueo de cuenta. | Code Block |
---|
{
"blockCode": "",
"blockCodeIndicator": 1,
"foreignUse": 0,
"functionCode": "U",
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"functionCode": "B",
"accountNumber": "9500501520328494829",
"blockCode1Local": "M",
"localOrganization": 950
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
TransferBalance
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia . | Code Block |
---|
{
"transactionData": {
"transactionAmount": 1,
"actionCode": "8012",
"authorizationCode": "311S3q",
"effectiveDate": "2023-06-21",
"description": "P2P",
"paidConcept": "test",
"memoPostedIndicator": "qqq",
"suppressMonetaryTransaction": "qqq",
"n1n2ByPass": "qqq",
"identifier": "S_IN",
"box": "3",
"crPlaza": "10MON",
"crStore": "50WHN",
"keyTracking": "KEYTRACKING0123456789",
"senderAccount": "senderAccount012345",
"beneficiaryAccount": "beneficiaryAccount1",
"counterpartInstitution": "aaaaa",
"operatingInstitution": "bbbbb",
"frcUprkBeneficiary": "frcUprkBenefi",
"orderingFrcUprk": "orderingFrcUp",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "recipientName01234567890123456",
"orderingName": "orderingName012345678901234567",
"paymentSourceId": "paymentSourceId012345"
},
"xTransactionId": "123",
"accountNumber": "9500501545918394337"
} |
| Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111208",
"transactionData": {
"transactionCode": "8012",
"transactionDescription": "P2P RECIEVER",
"currentBalance": "-2122495",
"openToBuy": "2122548"
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
TransferPeerToPeer
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia P2P. | Code Block |
---|
{
"from": {
"accountNumber": "9500508496924050930",
"actionCode": "8008",
"transactionDescription": "P2P_TRANSFER_SOURCE",
"description": "P2P_TRANSFER_SOURCE",
"authorizationCode": "1234"
},
"to": {
"accountNumber": "9500502030236002994",
"actionCode": "8012",
"transactionDescription": "P2P_TRANSFER_TARGET",
"description": "P2P_TRANSFER_SOURCE",
"authorizationCode": "1234"
},
"effectiveDate": "2022-01-30",
"transactionAmount": 100,
"device": "abcfghjfghjklghjkfghjk5678956789",
"ip": "198.162.123.148",
"latitude": 123.56565656,
"longitude": -23.565656,
"xTransactionId": "123"
} |
| Code Block |
---|
{
"effectiveDate": "2022-01-30",
"transactionAmount": "100",
"actionOutputArea": {
"actionData": [
{
"authorizationCode": "1234",
"accountNumber": "9500508496924050930",
"transactionDescription": "P2P SENDER",
"feeAmount": "0",
"transactionCode": 8008,
"currentBalance": -5988391,
"creditLimit": 0,
"openToBuy": 598649100,
"authorizationNumber": "507925"
},
{
"authorizationCode": "1234",
"accountNumber": "9500502030236002994",
"transactionDescription": "P2P RECIEVER",
"feeAmount": "0",
"transactionCode": 8012,
"currentBalance": -169434,
"creditLimit": 0,
"openToBuy": 17133400,
"authorizationNumber": "332272"
}
]
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
FrozenBalanceTransfer
Descripción | Request | Response | GRPC Codes |
---|
Realiza una transferencia QR. | Code Block |
---|
{
"transactionData": {
"transactionAmount": 20,
"actionCode": "8038",
"authorizationCode": "Q1er44",
"effectiveDate": "2022-08-24",
"description": "QR code test - normal hours",
"paidConcept": "Hello",
"memoPostedIndicator": " ",
"suppressMonetaryTransaction": "Y",
"n1n2ByPass": "N",
"identifier": 0,
"box": "1",
"crPlaza": "10MON",
"crStore": "50WHN",
"keyTracking": "Hello",
"beneficiaryAccount": "Hello",
"senderAccount": "Hello",
"counterpartInstitution": "Hello",
"operatingInstitution": "Hello",
"frcUprkBeneficiary": "Hello",
"orderingFrcUprk": "Hello",
"device": "123456789-123456789-123456789-12",
"ip": "198.162.200.200",
"latitude": -109.699,
"longitude": 23.062,
"recipientName": "Hello",
"orderingName": "Hello",
"paymentSourceId": "bf0469d7-b507-44d6-af7d-d4edea6340f1"
},
"xTransactionId": "123",
"accountNumber": "9500508020127353147"
} |
| Code Block |
---|
{
"historyDate": "2023-09-12",
"historyTime": "111311",
"transactionData": {
"transactionCode": "8038",
"transactionDescription": "CASHOUT WITH QR-CODE(FREE BAL)",
"currentBalance": "-1382946",
"openToBuy": "1382326"
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
GetAccountBalance
Descripción | Request | Response | GRPC Codes |
---|
Realiza la consulta de balance de cuenta. | Code Block |
---|
{
"accountNumber": "9500501520328494829"
} |
| Code Block |
---|
{
"accountOrCardNumber": "9500501520328494829",
"currentBalance": 998176210159,
"availableCreditLimit": 32237425576994724,
"frozenBalance": 26000
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Customer Adapter
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de customer. Este componente se desarrolló para desacoplar los procesos core de Spin y el proveedor financiero para lograr una mayor escalabilidad. |
CreateCustomer
Descripción | Request | Response | GRPC Codes |
---|
Creación del cliente | Code Block |
---|
{
"logo": "60",
"address": "Ciruelas",
"houseNumber": "12345",
"externalNumber": "8007",
"colony": "Lomas",
"city": "Lomas de Alvarez",
"state": "COL",
"postalCode": "99980",
"dateOfBirth": "2000-08-06",
"stateOfBirth": "CDMX",
"email": "lmedina@palo-it.com",
"firstName": "Judith",
"lastName": "Medina",
"maternalLastName": "Ruiz",
"mobilePhoneNumber": "5521163588",
"identificationNumber": "4152554487415113698",
"ine": "1234117890099",
"occupation": "Tester",
"genderCode": "1",
"user4":"1",
"identificationNumberFlag": "2"
} |
| Code Block |
---|
{
"customerNumber": "0995000000000080589"
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
UpdateCustomer
Descripción | Request | Response | GRPC Codes |
---|
Actualizar cliente | Code Block |
---|
{
"email": "lmedina@palo-it.com",
"numberType": 1,
"customerNumber": "0995000000000077863",
"address": "Ciruelas",
"dateOfBirth": "1999-02-06",
"city": "Villa de Alvarez",
"countryCode": "MEX",
"county": "CDMX",
"colony": "ADOLFO LOPEZ MATEOS",
"externalNumber": "1007",
"firstName": "Sandra",
"genderCode": 2,
"houseNumber": "123",
"ine": "1234117890099",
"lastName": "Velasco",
"maritalStatus": 0,
"maternalLastName": "Medina",
"middleName": "Rosa",
"mobilePhoneIndicator": 1,
"mobilePhoneNumber": "31211635899",
"occupation": "NURSE",
"ownOrRentResidenceFlag": 0,
"postalCode": 54070,
"stateOfBirth": "DF"
} |
| Code Block |
---|
{
"outputArea": {
"customerNumber": "0995000000000077863",
"accountNumber": "0995000000000077863",
"responseCode": "",
"level": "",
"transactionAmount": 0,
"countryLimit": {
"dailyLimitLoad": 0,
"monthlyLimitLoad": 0,
"dailyLimitCash": 0,
"monthlyLimitCash": 0,
"limitForDepositTransactions": 0
},
"accountLimit": {
"accountDailyAmountLoad": 0,
"accountMonthlyAmountLoad": 0,
"accountDailyAmountCash": 0,
"accountMonthlyAmountCash": 0
}
}
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
LinkAccountToCustomer
Descripción | Request | Response | GRPC Codes |
---|
Vincular cuenta al cliente | Code Block |
---|
{
"accountNumber": "9500505675946730065",
"alternateCustomer":
{
"expirationDate": "2023-08-22"
},
"customerNumber": "0995000000000075954",
"qualification": "2",
"customerTypeIndicator": 0,
"foreignUseIndicator": 0
} |
| Code Block |
---|
{
"customerNumber": "0995000000000045697",
"accountNumber": "1650"
} |
| 0 OK: Solicitud exitosa. 3 Bad Request: Request con campos no válidos. 13 Internal Server Error: Servicios no disponibles. |
...
Card Gateway
Info |
---|
Permite tener la comunicación entre Spin y Fiserv para los módulos de card. |
POST → /cards/account
Descripción | Request | Response | HTTP Codes |
---|
Vincular una tarjeta con un número de cuenta | Code Block |
---|
{
"cardNumber": "0004217470072001676"
} |
| Code Block |
---|
{
"accountNumber": "0004217470072001676"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT → /cards/account
Descripción | Request | Response | HTTP Codes |
---|
Desvincular una tarjeta de un número de cuenta | Code Block |
---|
{
"customerOrAccountNumber": "9500507060523627372",
"cardNumber": "0004217470969640887",
"cardholderType": 1
} |
| Code Block |
---|
{
"cardNumber": "***************4568",
"customerOrAccountNumber": "9500507060523627372"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/cards/embosser/details
Descripción | Request | Response | HTTP Codes |
---|
Obtener cuenta mediante Pantoken Activo | Code Block |
---|
{
"panToken": "0004217470595215803",
"cardSequence": 2147483647,
"foreignUse": 0
} |
| Code Block |
---|
{
"postToAccount": "9500508261544464147",
"blockCode": "Z",
"cardNumber": "***************0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
Obtener cuenta mediante Pantoken Inactivo | Code Block |
---|
{
"panToken": "0004217470595215803",
"cardSequence": 1,
"foreignUse": 1
} |
| Code Block |
---|
{
"postToAccount": "9500507060523627372",
"blockCode": "Z",
"cardNumber": "***************0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles |
.Card Aggregation service
Info |
---|
Incorpora los endpoints de Card Validación de campos mandatorios antes del envío a Fiserv Expone endpoints a través de un API REST y gRPC |
POST /cards/embosser/details
Descripción | Request | Response | HTTP Codes. |
Obtener cuenta mediante Pantoken Expirado | Code Block |
---|
{
"panToken": " |
|
00042174705952158030004217470200073271",
"cardSequence": |
|
21474836470 9500508261544464147 "blockCode":"Z", "cardNumber": "*************** |
|
0252",
"currentCardActivation": "N",
"dateBlock": "2023-09-04"
}8578",
"currentCardActivation": "N"
} |
| 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
POST → /v1/cards/embosser/block
Descripción | Request | Response | HTTP Codes |
---|
Bloqueo de tarjetas - Bloqueo | Code Block |
---|
{
"blockCode": "Z",
"panToken": "0004217470885923553",
"cardSequence": 1,
"functionCode": "B" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
PUT /account/prepaid
Descripción
PUT /cards/activation
...
Descripción
...
Request
...
Response
...
HTTP Codes
PUT /cards/embosser/block
Descripción | Request | Response | HTTP Codes |
---|
Request | Response | HTTP Codes | GET /cards/account
...
Descripción
...
Request
...
Response
...
HTTP Codes
Bloqueo de tarjetas - Desbloqueo | Code Block |
---|
{
"blockCode": " |
|
Z00042174708859235530004217470752022413",
"cardSequence": 1,
"functionCode": " |
|
BU" //B para bloquear - u Desbloquear
} |
| | 200: Solicitud exitosa. 400: Request con campos no válidos. 401: Apy Key no válida. 500: Servicios no disponibles. |
...